AUTDMATIDN AND RDBDTICS
Automation and Robotics
Edited by
Juan Manuel Ramds Arreguin
lTech
Published by ITech Education and Publishing
ITech Education and Publishing
Vienna
Austria
Abstracting and nonprofit use of the material is permitted with credit to the source. Statements and
opinions expressed in the chapters are these of the individual contributors and not necessarily those of
the editors or publisher. No responsibility is accepted for the accuracy of information contained in the
published articles. Publisher assumes no responsibility liability for any damage or injury to persons or
property arising out of the use of any materials, instructions, methods or ideas contained inside. After
this work has been published by the ITech Education and Publishing, authors have the right to repub
lish it, in whole or part, in any publication of which they are an author or editor, and the make other
personal use of the work.
© 2008 ITech Education and Publishing
www.itechonline.com
Additional copies can be obtained from:
publication@arsjournal.com
First published May 2008
Printed in Croatia
A catalogue record for this book is available from the Austrian Library.
Automation and Robotics, Edited by Juan Manuel Ramos Arreguin
p. cm.
ISBN 9783902613417
1. Automation. 2. Robotics. I. Ramos Arreguin
Preface
In this book, a set of relevant, updated and selected papers in the field of automation and
robotics are presented. These papers describe projects where topics of artificial intelligence,
modeling and simulation process, target tracking algorithms, kinematic constraints of the
closed loops, nonlinear control, are used in advanced and recent research.
Also, the lecturer can find some of the new methodologies applied to solve complex
problems in the field of control and robotic research fields. Moreover, this book can serve as
a good information source for scientific scholars, engineers and beginners who would like to
start working with both automation and robotic areas. Combining the ideas of the diverse
disciplines involved in such areas, this book give hints and help about how to implement
them on products for industrial automation and robotics applications.
I would like to thank all the researchers who send their works to share with the scientific
community. The editors are extremely grateful to all of them for their support to complete
this book.
Editor
Juan Manuel Ramos Arreguin
Electronica y Automatizacion
Universidad Tecnologica de San Juan del Rio
jramos@mecamex.net
VII
Contents
Preface V
1 . Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic 001
Control
Tomoaki Kobayashi, Torn Yoshida, Junichi Maenishi, Joe Imae and Guisheng Zhai
2. Enhanced Motion Control Concepts on Parallel Robots 017
Frank Wobbe, Michael Kolbus and Walter Schumacher
3. Vision Guided Robot Gripping Systems 041
Zdzislaw Kowalczuk and Daniel Wesierski
4. ClosedLoop Feedback Systems in Automation and Robotics, 073
Adaptive and Partial Stabilization
G. R. Rokni Lamooki
5. Nonlinear Control Law for Nonholonomic Balancing Robot 087
Alicja Mazur and Jan Kedzierski
6. Deghosting Methods for TrackBeforeDetect Multitarget 097
Multisensor Algorithms
Przemyslaw Mazur ek
7. Identification of Dynamic Systems & Selection of Suitable Model 121
Mohsin Jamil, Dr. Suleiman M Sharkh and Babar Hussain
8. Towards an Automated and Optimal Design of Parallel Manipulators 143
Marwene Nefzi, Martin Riedel and Burkhard Corves
9. Identification of ContinuousTime Systems with Time Delays by 157
Global Optimization Algorithms and Ant Colony Optimization
Janusz P. Paplinski
1 0. Linear Lyapunov ConeSystems 1 69
Przemyslaw Przyborowski and Tadeusz Kaczorek
1 1 . Pneumatic Fuzzy Controller Simulation vs Practical Results for 1 91
Flexible Manipulator
Juan Manuel Ramos Arreguin, Jesus Carlos PedrazaOrtega,
Efren GorrostietaHurtado, Rene de Jesus RomeroTroncoso,
Jose Emilio VargasSoto and Francisco HernandezHernandezl
VIII
12. Nonlinear Control Strategies for Bioprocesses: Sliding Mode 201
Control versus Vibrational Control
Dan Seiisteanu, Emil Petre, Dorin Popescu and Eugen Bobasu
13. Sliding Mode Observers for Rotational Robotics Structures 223
Dorin Sendrescu, Dan Seiisteanu, Emil Petre and Cosmin lonete
14. A Declarative Framework for Constrained Search Problems in 243
Manufacturing
Sitek Pawek and Wikarek Jaroslaw
15. Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators 261
Krzysztof Stachera and Walter Schumacher
16. Orthonormal Basis and Radial Basis Functions in Modeling and 277
Identification of Nonlinear BlockOriented Systems
Rafat Stanislawski and Krzysztof J. Latawiec
1 7. Control System of Underwater Vehicle Based on Artificial 285
Intelligence Methods
Piotr Szymak and Jozef Matecki
18. Automatization of Decision Processes in Conflict Situations: 297
Modelling, Simulation and Optimization
Zbigniew Tarapata
19. Fuzzy Knowledge Representation Using Probability Measures of 329
Fuzzy Events
Anna WalaszekBabiszewska
20. Multiple MultiObjective Servo Design  Evolutionary Approach 343
Piotr Wozniak
21 . ModelBased Control of a Nonlinear One Dimensional Magnetic 359
Levitation with a PermanentMagnet Object
Zhenyu Yang, Gerulf K.M. Pedersen and Jorgen H. Pedersen
22. Nonlinear Adaptive TrackingControl Synthesis for General Linearly 375
Parametrized Systems
Zenon Zwierzewicz
1
Tracking Control for Multiple Trailer Systems
by Adaptive Algorithmic Control
Tomoaki Kobayashi, Tom Yoshida, Junichi Maenishi,
Joe Imae and Guisheng Zhai
Osaka Prefecture University
Japan
1. Introduction
In recent years, a trucktrailer system is the most useful physical distribution system. The
trucktrailer systems have more convenience than coastal services or freight trains.
Meanwhile, problems of the traffic jam and the air pollution in an urban area have become
serious, year after year. Therefore improvement and rationalization of the transport
efficiency are social needs. There are many papers suggesting a platoon system of several
trucks as a part of development of ITS (Intelligent Transport System). These platoon systems
consist of several unmanned trucks automatically following a truck driven by a conductor,
and it is commonly believed that it brings improvements of energy efficiency along with
alleviation of the traffic jam. Moreover, there is a purpose of covering insufficient workforce
of truck drivers who have to do severe labors, too. In the platoon, trucks are not physically
connected to each other, and thus there is much flexibility. On the other hand, even if each
vehicle is physically connected by mechanical linkage, this is not important restrictions, for
transport robots which are operated in the factory, because moving range and action plan
are limited. Moreover, the multiple trailer system is safer than platoon system, because if
each vehicle is physically connected, there is no danger of collision among trailers. In this
paper, we deal with a control method for a physically connected multiple trailer robot,
which is a transport system in factories.
The control method of connected vehicle has been studied for a long time (Laumond, 1986).
In particular, there are many papers which studied controlling its backward motion with
guaranteed stability (Sampei & Kobayashi, 1994). Moreover, kinematical model of a multiple
trailer system is described by a nonholonomic system, and it is a controllable nonlinear
system (Hermann & Krener, 1977). In theoretical field, it has been a hot subject of research,
because asymptotic stabilization is impossible using one continuous timeinvariant since the
nonholonomic system does not satisfy the Brockett's necessary condition for stabilizability
(Brockett, 1983). Therefore, the control problem of nonholonomic system is a theoretically
difficult problem, thereupon various researches such as timevariant controller (M'Closkey
& Murray, 1993) or hybrid control techniques (Matsune et al., 2005) are performed. We look
at this issue from more practical point of view, then investigate a realtime control
algorithm, which is based on the so called algorithmic control (Kobayashi et al., 2005a),
(Imae et al., 2005) with a similar formulation of the model predictive control (MPC)
Automation and Robotics
technique for nonlinear continuous time system. Our algorithmic design approach is a
technique for ensuring robustness by adopting a numeric solution called Riccati Equation
Based (REB) algorithm using quasi linearization that includes feedback solution. Moreover,
though details are described later, the control technique by algorithmic design which we
proposed is an effective method for nonholonomic systems because our method is switching
and applying the control strategy on a short control interval and thus the controller is
discontinuous time variant, which does not violate Brockett's theorem. We showed the
effectiveness of proposed method applicable to nonholonomic systems through some
simulations and an experiment with a differentialdriven unicycle vehicle model (Kobayashi
et al., 2005b). Then, we extend our design method by incorporating numerical robustness for
disturbances and parameter uncertainties and, by focusing on the switching interval of
control strategy on iterative process of algorithmic design (Kobayashi et al., 2006). We
discussed about effectiveness of our approach for an unstable motion control of high order
nonlinear system, in this paper. In the most of conventional research, the directhooked type
model (Lee et al., 2001) is treated. The directhooked model can be transformed to a
canonical form called chained form (Murray & Sastry, 1993). Then, control problem for the
directhooked model can be reduced to a canonical problem. However, the directhooked
model has a tracking error of followon trailers (Fig.l). Therefore, there are many
suggestions for eliminating the tracking error by model constructions or mechanical linkage
design. We pick up a offhooked model (Lee et al., 2004) which has a most simple structure
and cannot be converted to canonical form (Ishikawa, 1993). Therefore, proposed
algorithmic design is considered as an effective strategy for the offhooked trailer system,
because our approach can treat the general nonlinear systems. The effectiveness is discussed
through a numerical simulation result.
The outline of this paper is as follows. In section 2, we describe the nonlinear optimal
control problems and the Riccati Equation Based algorithm. In section 3, the algorithmic
design method is described in detail. Also, we make an extension of our design method for
robustness. The backward motion control problem of multiple trailer systems is formulated
in section 4. In section 5, we show some simulation results in order to demonstrate the
effectiveness of adaptive algorithmic design. Section 6 concludes the paper.
Tracking Error
Fig. 1 Tracking error of the directhooked trailer system
2. Optimal control problem
2.1 Formulation
We deal with the following general nonlinear system
x(t) = f(t,x(t)Mt)) CO
Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic Control 3
x(t ) = x eX n (2)
where t is initial time, x is initial state given. Here, we denote the state variable by
x(t) = [x l (t), •••,x w (0] T G ^\ and the input variable by u(t) = [u x (t), ••,u r (t)] T e$i r . Then, the
purpose is to find the controller which minimizes a performance index J over a time
interval [7 , ^i] •
J = G(x(t { )) + \* 1 L{t,x{t\u{t))dt (3)
Based on the problem formulation (1) to (2), we describe our online computational design
method, that is to say, algorithmic design method (Kobayashi et al., 2005a).
It is known that whether or not the algorithmic design method succeeds depends on how
effective the algorithm is to iteratively search the numerical solutions of optimal control
problems. In this paper, we adopt one of the socalled Riccatiequation based algorithms
(REB algorithms (Imae & Torisu, 1998)), which is known to be reliable and effective in
searching numerical solutions. Details are given later.
2.2 Riccatiequation based algorithm
Under the problem formulation (1) to (3), we describe an iterative algorithm for the
numerical solutions of optimal control problems, based on Riccati differential equations. In
this respect, the algorithm falls in the category of optimal control algorithms, as presented in
(Nedeljkovic, 1981), (Imae et al, 1992), and so on.
[ Assumptions ]
Let x:[t , t{\ — » 9? w be an absolutely continuous function, and u :[t , t{\ — » 9? r be an
essentially bounded measurable function. For each positive integer j , let us denote by AC J
all absolutely continuous functions: [to 9 t\]>9l J , and by L^ all essentially bounded
measurable functions: [f , t{\>W . Moreover, we define the following norms on AC J and
L^ respectively:
x = maxx(7) for x e AC J , t e[£ , t{\
\y\ = ess supj;(0 for y e L^, t e [t , t{\
where the vertical bars are used to denote Euclidean norms for vectors.
Now, we make some assumptions.
i. G:W" ^M 1 tfitfxyTxW ^>9T , L:M l xM n x$l r ^K 1 are continuous in all their
arguments, and their partial derivatives G x (x) , f x (t,x,u) , f u (t,x,u) ,L x (t,x,u) and
L u (t,x,u) exist and are continuous in all their arguments.
ii. For each compact set U a 9? r there exists some M x e (0,oo) such that
\f(t,x,u)\<M x (\x\ + \) (4)
for all f e 1R 1 , x e K n and u e U .
Automation and Robotics
[Algorithm ]
STEP AO Let p e (0,1) and M 2 e (0,1) . Select arbitrarily an initial input u Q 6^.
STEP Al z ? = .
STEP A2 Calculate x\t) with !/'(*) from the equation (1).
STEP A3 Select A 1 e 1R WXW , ^ e L n ™ , #/ 2 e C" and B l 22 e Z£ r so that Kalman's sufficient
conditions for the boundedness of Riccati solutions (Jacobson & Mayne, 1970) hold, that is,
for almost all t e [t t{\,
A\t)>0
B l 22 (t)>0 (5)
B\ x {t)B[ 2 {t)Bi 2 {ty X B[ 2 (t) T >Q
where A\ B l n and B l 22 are symmetric and () T means the transpose of vectors and
matrices. We solve (6), (7), and (8) with respect to Sx , K , r and denote the solutions as
5x\t) f K\t), r\t).
Sx(t) = {f x (t, x\ «') + /«(', **, u^B^ifJit, x\ u^mB^^Sxit)
+ f u (t, x\ u^B^ifJit, x\ uy^Llit, x\ u% (6)
Sx(t ) = 0,
K(t) = K(t)f x (t, x\ u^fjit, x\ u^m + Bl,
+ (K(t)fu(*> xi > ^')^ 2 )^22" 1 (^2 T fjfr x\ u l )K{t)\ (7)
K(t x ) = A\
r(t) = fj(t, x\ k>(0 + L T x (t, x\ u l )
+ {Bl 2 K(t)fJ(t> *'> u^B^iLlit, x\ u l ) + fj(t, x\ ii')r(O), (8)
K^i) = Wi)),
and determine £i/ as follows.
+ fJ(t,x i ,u i y(t)L T u (t,x i ,u i )}.
(9)
STEP A4 Determine (x',w*) satisfying
x(t ) = x e$i n
H l (t,(xx l ),(uu l ),p l ) = msixH l (t,(xx l ),(uu l ),p l )
vcm r
Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic Control
where
H l (t, Sx, Su, p) = {L x (t, x\ u l )Sx + L u (t, x\ u l )8u
+(Sx T B l u Sx + 28x T B[ 2 8u + Su T B l 22 Su)}
+p T (f x (t, x\ u^Sx + M, x\ ufyu)
and p l is the solution of the following equation.
p(t) = fJ(t,x\u i )p(t) + L T x (t,x i ,u i )
p(t l ) = G T x (x(t l ))
STEP A5 a t =l.
STEP A6 Set u i+ \t) = u i {t) + a i 8u i {t) + af{u i {t)u i {t)Su i {t)).
if (10) holds, go to Step A7. Otherwise, set a t = /3a t and repeat Step A6.
J(u i+X )J(u l ) < a i M 2 {G(x i (t l ))Sx(t l )
\\ h (L x (t, x\ u^S^+L^t, x\ u^Su^dt}
(10)
STEP A7 Set i = i + l, and go to Step A2. Repeat Step A2 to Step A7 until the performance
index J converges. Here, the integer i represents the number of iterations.
3. Algorithmic design
3.1 Real time control technique
In this section, we describe the outline of the algorithmic design for real time control of
nonlinear system. See (Imae et al., 2005), (Kobayashi et al., 2005a) for more details. The basic
idea of this realtime control design is the control strategy u is executed one by one
through N iterations of the abovementioned REB algorithm from Step A2 to Step A7. In
this design method, the controller is not needed in an explicit expression, and the control
strategy is decided repeatedly by the REB algorithm. After the actual states are observed, the
states of the next AT seconds from now are predicted by the state equation (1). Then, with
the predicted states set as initial states, we obtain the next control strategy u N by N
iterations of the REB algorithm from Step A2 to Step A7. Through sufficiently large number
of iterations N , it could be expected to eventually reach the possible optimal solutions.
However, the value of N should be decided for the iterative processing to end in the AT
[sec]. We here describe how the algorithmic controller works. See also figure 1. Here, the
feedback structure of the solution in (Imae et al., 2005) and (Kobayashi et al., 2005a) is not
adopted for simplification of computation.
[ Real Time Algorithm ]
STEP Bl Let k = . Select arbitrarily an initial input uf .
STEP B2 Measure the actual state x ak , and apply the input u k to the plant over the
interval of the unit time of calculation AT . During this time interval, we proceed with two
kinds of calculations: One is to predict the oneunittimeahead state x„^ + n through the
system equation (1) with the initial state x ak , and the other is to calculate
Automation and Robotics
the N iterationahead solution with the updated initial state x p ^ k+Vj . Then, we obtain the
next control strategy u k+ i . If the rate of the value of performance index is less than a
sufficiently small value y , that is if following inequalities are satisfied, stop the iteration
because it seems that the optimal solution was obtained.
J(fi , ' +1 )y(M / )
STEP B3 Set k = k
J(u l )
 1 , and go to Step B2.
<y or \j{u l )\ < y
(ii)
Actual state
Predicted state
REB Solution
AT 2AT
Time [sec]
Fig. 2 Optimal / actual trajectory.
In our previous works, we verified the effectiveness of our algorithmic approach by
applying to various nonlinear systems. For example, we tried a swingup problem of
inverted pendulum, or the obstacle avoidance problem for a unicycle robot. As a result, our
approach gave the effective solution for these problems. The backward motion control
problem for the multiple trailer system that we treat in this paper is a more difficult
problem, because the system is a higher order nonlinear system. In spite of these difficulties,
we confirmed the effectiveness of our algorithmic approach for such a complex problem
through some numerical simulations. However, it is necessary to select carefully AT and N
that are the design parameters of this algorithm. In the case of including disturbance, the
feasibility of the algorithm depends on the combination of AT and N. For reducing the
complexity of the method of deciding these design parameters, a simple way of
computational artifice is shown in the next section. The simulation result is described in
section 6.
3.2 Algorithmic design incorporating computational time
In this section, a simple computational artifice of the abovementioned algorithmic design is
pointed out. First, we describe the key notes here. In the abovementioned algorithm, the
interval of time AT to apply one control strategy u k is called "switching time". And the
maximum number of the iteration executed in a switching time N is called "maximum
Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic Control 7
iteration". When the state was predicted, the obtained state trajectory is called "predictive
trajectory" and actual trajectory is called "trajectory".
In our algorithmic design, the computation of maximum iteration should be done in
switching interval. The search process of the optimal solution is executed in this algorithm,
and the required computation time depends on the state. Therefore, it was necessary to give
some margin to the switching interval. If the maximum iteration is sufficiently large, it may
obtain an optimal solution in each switching interval. However, the switching interval has
to set to large, because long computation time is required. Because the feedback effect is
obtained by observing each switching interval, it seems that if the switching interval is as
short as possible, the performance of robustness is better. The key idea of the algorithm
which we propose here is to treat the switching interval as varying. It increases the
maximum iteration when time is required for searching the optimal solution, and the
switching interval is increased along with it. On the other hand, when long time is not
required to find the optimal solution, reduce the maximum number of iteration and the
switching interval for improving the robustness. The maximum iteration is decided based
on Fig.2 and the computation time which was required to execute the algorithm. The
maximum allowed computation time is set to r max , and the total time interval [0,r max ] is
divided into five sections as
where t 5
For simplicity, let r t =ai (/ = l,2,,5) . Moreover, the maximum iteration
N and the switching interval AT are determined as follows.
AT 1 '
■ pN
(12)
* 5
I 4
3
12
ll
S
_j  .
r~
T 4
T l T 2 T 3
Computation Time [msecl
Fig. 3 Maximum iteration.
When actual calculation time is r , the maximum iteration N is decided from Fig.2 and
switching interval AT N is obtained from expression (12). However, note that the present
switching interval and the present maximum iteration are used in the next step. Here, based
on the average computation time for oneiteration, the constants a and p are set to
a = 0.02 [sec] and p = 0.03 [sec] . In general, it is possible to decide N and AT such as
N a = g(cr) and AT^ = h{a) using a certain switching parameter a .
[ Robust Algorithm ]
STEP CI Let k = . Select arbitrarily initial input u k and maximum iteration N k . Then,
AT Nk is decided.
8
Automation and Robotics
STEP C2 Measure the actual state x ak , and apply the input u k to the system over the
interval of the unit time of calculation AT k . During this time interval, we proceed with
two kinds of calculations: One is to predict the oneunittimeahead state x p ^ k+V} through
the system equation (1) with the initial state x ak , and the other is to calculate from Step A3
to Step A7 with the updated initial state x„^ + n .
STEP C3 The maximum iteration is N k , and calculate the rate of the value of performance
index in each iteration, similarly as the computation from Step A3 to Step A7 (i = \,2,,N k ) .
STEP C4 If the rate of the value of performance index is larger than a sufficiently small
value y , that is if following inequalities are satisfied, it seems that the optimal solution was
not obtained.
jV +1 )^V)
J(u l )
>y and \J(u l )\>y
(13)
where y > . Then, let i = i + 1 , and execute the computation from Step A3 to Step A7.
Execute these iterative computations till maximum i = N k .
If following inequalities are satisfied, discontinue the iteration because it seems that the
optimal solution was obtained.
J(u l+l )J(u l )
J(u l )
< y or \j(u l )\ < y
(14)
The computation time which was required to the abovementioned computation is set to r k .
Then, we obtain the next control strategy u k+l .
STEP C5 The maximum iteration A^ +1 and the switching interval AT k+l for the next
interval are decided based on the computation time which was required for current interval,
equation (12) and Fig. 2.
STEP C6 Set k = k + 1 , and go to Step C2.
4. Modeling
The kinematical model of the multiple trailer system which we treat is shown in Fig.4. The
meaning of next equation (15) is the state equation of the first vehicle (autotruck) which is
driven pulling the followon passive trailers.
Xq
cos#
"o"
h
=
sin#
v +
L^oJ
1
(15)
The control input vector of this system is denoted by u = [v co] . Here, v and co denotes
the velocity and angular velocity of the first vehicle respectively. This model is a differential
driven vehicle model which has nonholonomic constraint, and is regarded as one of the
most typical nonholonomic systems. It is known that although this model has
Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic Control 9
controllability, it can not be asymptotically stabilizable by any continuous timeinvariant
controller (Brockett, 1993). For this reason, there have been many references dealing with the
stabilization problem for this model using various kinds of controllers. One successful
approach is to convert it into the socalled chained form and then establish a timevarying
controller. Although such an approach leads to asymptotical stabilization, it is applicable
only for the case where the system's dimension is low (less than four) .Since we deal with a
multiple trailer system, whose dimension is obviously much larger than four, the approach
of utilizing chained form with a timevarying controller can not be applied here, and more
practical strategy is desirable.
The most of conventional research have treated the directhooked type trailer model. This
model is obtained by Dq, D x = in Fig.4, and the kinematics of the i trailer is as follows.
Fig. 4 Mechanical linkage design of multiple trailer system.
Only the first vehicle (truck) is driven and the following vehicles (trailers) are passively
pulled by the truck.
ft
.sin(<9 M ^)v M /
/ L i (16)
v t = cos(<9 M ft)v M
where, t denotes the attitude angle of the i l trailer, and L i is the length of the i l linkage.
v t and 6 t denote the velocity and angular velocity of i l trailer respectively.
The directhooked model can be transformed to a chained form. However, this model has a
tracking error of followon trailers. Therefore, we deal with the off hooked model
(L t = D t _i ^ 0) which can eliminate the tracking error (Fig. 5). However, the model of off
hooked trailer system cannot be transformed to canonical form. Fig. 4 shows a offhooked
model, and the following equation denotes the i l trailer's kinematics.
^ = (sin(0 M 6>> M cos(0 M ^iiAh
v; =cos(0 M 0> M +sin(0 M <9;)<9 M A.
10
Automation and Robotics
5. Problem formulation
Tracking control problem of the multiple trailer system is formulated as a nonlinear optimal
control problem in this section. For simplicity of notation, we consider one truck and two
trailers. Even if the number of the trailer increases, our control design can be extended very
easily. In that case, increase of the computational cost is inevitable.
Fig. 5 Tracking path of the off hooked trailer system.
The state equation of the 1 truck and 2trailers model is given by
Z = A(4)u
yo
A£) =
cos<9
sin#
sin(<%<%)/
/L
sin(2^0 o 0 2 )/
u = [v CO]
1
cos(<9 @\)
cos(20 x 0 Q 0 2 )
(17)
The performance index is given by
j=(t(t)z f (t)) T P(mZf(t))\ tt
+ i J' 1 mt)  z f (0) T e««  z f (0) + «w T Rutwt
where the state vector and input vector are denoted by % and u respectively. P , Q , R
denote the weighting matrices. We setP = 0.5/ ,Q = diag[o.2 0.2 0.001 0.001 O.OOl],
R = diag[0.05 0.0l]. fy(0 is the target state, and it is the circle of radius 0.5[m] with
constant velocity. Furthermore, we treat the state constraints and input constraints by
introducing the penalty term.
Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic Control
11
J = J +
i=\ 0ilim(0il0i)
)dt
(18)
where, dni m (i=l,2) is an absolute value of limitation of the relative angle, and v lim and
co iim are the absolute value of the limitation of the control input.
Fig. 6 Permitted region of i trailer.
We chose \0 t \ < <9 /lim = 0.5 [rad] (i = 1,2) , v < v lim =1.0 [m/sec] , \co\ < co Xim = 4.848 [rad/sec] .
Fig. 6 shows the permitted region of followon trailers. The weight parameters are set to
r = 0.001 (i = 1,2) , r v = 0.0001 , r^ = 0.0001 .
6. Numerical simulation
The control strategy of our approach is obtained by processing the iterative calculation of
the REB algorithm in each AT. Through sufficiently large number of iterations N, it could be
expected to eventually reach the possible optimal solutions. Through some simulation
results we can obtain the effective solution with roughly AT=100[msec] by the PC which we
use. However, it is not necessarily the case that the effective solution is obtained, especially
in the case of including a disturbance. The simple computational artifice described in section
3.2. partially reduces such a problem. The example of the simulation result of applying the
algorithm to the case of including a disturbance is shown in the following.
Fig. 7 shows the simulation result of the computation time of each AT with fixed number of
iterations N and switching time AT=100[msec]. Simulated time is 30 [sec], then average and
minimum/ maximum value of the computation time is shown. The solid lines are A T k = pN k
with /?= 0.02 [sec] and /?= 0.03 [sec] respectively. According to Fig. 7, proposed algorithm is
almost executable in real time with /?= 0.03 [sec]. Therefore, we simply choose as
a= 0.02[sec], /?= 0.03 [sec]. However, real time feasibility is not guaranteed by these
parameters, because the computation time varies according to running condition.
Fig. 8  Fig. 11 show the simulation result with the initial state ^ = [0 ~ n /i ~ n /i ~ n /ii •
Impulsive disturbances on d\ and 02 have been added in this simulation at 5, 10, 15 and
20[sec], whose magnitude is 0.5[rad].
12
Automation and Robotics
0i(5n) = t (5ndi)  0.5, (j =1,2, « = 1,2,3,4) .
77
120
(U
a
100
p
80
<u
a
60
n
o
40
cd
2
Oh
20
g
o
o
^\\^^^^^ o
12 3 4 5 6
Number of Itaration TV
Fig. 7. Computational time, o : average of the computation time, with the maximum and
minimum computation time, solid line: AT k = j3N k with J3 = 0.02 [sec] and J3 = 0.03 [sec]
respectively.
The lower part of Fig.9 shows the computation time of each switching time and its upper
bound. AT has changed corresponding to disturbances. Also, this figure shows that this
algorithm is feasible in real time, because the computation time is less than switching time
AT .
1
5 10
Fig. 8 Simulation results: control inputs.
a io°
1 lo 1
I 10 " 2
\
\,
l\
,
\
,
_^ J
" v_
v
\
V
<D
j
j
i
i
1
10
15
20
25
30
jl00_
a
H 50
Oh
a
o
o o
in in if.
III 1
• LB .'J f % w ...v..^.^., ww ^
i * * i i S i ** i
5
10
20
25
30
15
Time [sec]
Fig. 9 Simulation results: value of performance index (upper stand). Computation time of
each AT and its bound (lower part).
Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic Control
13
15
^ 10
^ 5
<x>
10
25
15 20
Time [sec]
Fig. 10 Simulation results: state trajectories, (solid line: actual states, doted line: target
states).
30
14
Automation and Robotics
Passive trailers
' Truck ...
V
uirgct trajectory
(a) t = 0.0 [sec] (initial state)
(c) t = 2.0 [sec]
(e) ^ = 4.0 [sec]
(b) f = 1.0 [sec]
disturbance'! /" ^
Wi
(f) ^ = 5.0[sec] (disturbed)
,c:
(g) ; = 6.0 [sec]
(i) ^ = 8.0 [sec]
Fig. 11 Simulation results.
(h) t = 7.0 [sec]
Tracking Control for Multiple Trailer Systems by Adaptive Algorithmic Control 1 5
7. Conclusions
We discussed the real time control algorithm using the numerical solution called
algorithmic control. Then, we improved the conventional algorithmic design for the
numerical robustness via incorporating computation time. The key idea is to adjust the
maximum number of iteration with the computational time. This approach was applied to a
tracking control problem of the multiple trailer system. We showed through a numerical
simulation that the proposed algorithm is executable in real time, and it has robustness
against disturbances.
8. Acknowledgment
This research has been supported in part by the Japan Ministry of Education, Sciences and
Culture under GrantsinAid for Scientific Research (B) 18760326.
9. References
Brockett, R. W. (1983). Asymptotic Stability and Feedback Stabilization, Differential Geometric
Control Theory, Vol. 27, pp. 181191.
Hermann, R. & Krener, A. J. (1977). Nonlinear Controllability and Observability, IEEE
Transactions on Automatic Control, Vol. 22, No. 5, pp. 728740.
Imae, J.; Irlicht, L., Obinata, G. & Moore, J. B. (1992). Enhancing Optimal Controllers via
Techniques from Robust and Adaptive Control, International Journal of Adaptive
Control and Signal Processing, Vol. 6, pp. 413429.
Imae, J. & Torisu, R. (1998). A RiccatiEquation Based Algorithm for Nonlinear Optimal
Control Problems, Proceedings of the 37th Conference on Decision and Control, pp.
44224427.
Imae, J.; Yoshimizu, K., Kobayashi, T. & Zhai, G. (2005). Algorithmic Control for Realtime
Optimization of Nonlinear Systems: Simulations and Experiments, Proceedings of the
44th Conference on Decision and Control, pp. 37293734.
Ishikawa, M. (1993). Control of Nonholonomic Systems having Complicated Controllability
Structure, Journal of The Society of Instrument and Control Engineers, Vol. 42, No. 10,
pp. 841846.
Jacobson, D. H. & Mayne, D. Q. (1970). Differential Dynamic Programming, ISBN. 978
0444000705, Elsevier.
Kobayashi, T.; Magono, M., Imae, J., Yoshimizu, K. & Zhai, G. (2005a). Realtime
Optimization for Nonlinear Systems Using Algorithmic Control, Preprints of IF AC
[ 05, Prague, Czech Republic.
Kobayashi, T.; Maenishi, J., Imae, J. & Zhai, G. (2005b). RealTime Optimization for Mobile
Robot Based on Algorithmic Control, Proceedings of '2005 International Conference on
Control, Automation and Systems, pp. 21022107.
Kobayashi, T.; Maenishi, J., Imae, J. & Zhai, G. (2006). Real Time Control for 4wheeled
Vehicles via Algorithmic Control Incorporating Computation Time, Proceedings of
9th International Conference on Control, Automation, Robotics and Vision, pp. 13531358.
Laumond, J.P. (1986). Feasible Trajectories for Mobile Robots with Kinematic and
Environment Constraints, Proceedings of International Conference on Inteligent
Autonomous Systems, pp. 346354.
16 Automation and Robotics
Lee, J.; Chung, W., Kim, M., Lee, C. & Song, J. (2001). A Passive Multiple Trailer System for
Indoor Service Robots, Proceedings of 2001 IEEE/RS] International Conference on
Intelligent Robots and Systems, pp. 827832.
Lee, J.; Chung, W., Kim, M., Lee, C. & Song, J. (2004). A Passive Multiple Trailer System with
Offaxle Hitching, International Journal of Control, Automation, and Systems, Vol. 2,
No. 3, pp. 289297.
Matsune, I.; Zhai, G., Kobayashi, T., & Imae, J. (2005) A Study on Hybrid Control of
Nonholonomic Systems, Proceedings of The Society of Instrument and Control Engineers
Annual Conference, pp. 211214.
M'Closkey, R. T. & Murray, R. M. (1993). Nonholonomic Systems and Exponential
Convergence: Some Analysis Tools, Proceedings of the 32nd Conference on Decision
and Control, pp. 943948.
Murray, R. M. & Sastry, S. S. (1993). Nonholonomic Motion Planning: Steering Using
Sinusoids, IEEE Transactions on Automatic Control, Vol. 38, No. 5, pp. 700716.
Nedeljkovic, N. B. (1981). New Algorithms for Unconstrained Nonlinear Optimal Control
Problems, IEEE Transactions on Automatic Control, Vol. 26, pp. 868884.
Sampei, M. & Kobayashi, T. (1994). Path Tracking Control of CarCaravan Type Articulated
Vehicles Using Nonlinear Control Theory, Transactions of the Society of Instrument
and Control Engineers (in Japanese), Vol. 30, No. 4, pp. 427434.
Enhanced Motion Control Concepts on
Parallel Robots
Frank Wobbe, Michael Kolbus and Walter Schumacher
Institute of Control Engineering, TU Braunschweig
Germany
1. Introduction
During the last years parallel robots have found their way into industrial applications.
Though the ratio of workspace to designspace is usually worse compared to their serial
counterparts, parallel robots are superior in terms of stiffness, accuracy and highspeed
operation. This chapter takes the development into account and focuses on control concepts
of parallel robots used for handling and assembly.
To exploit these features, an effective control system is inevitable. Since the nonlinearities of
parallel structures are not negligible, control schemes have to include a precise dynamic
model. This chapter presents several approaches of modelbased control laws and discusses
their characteristics, in theory as well as in implementation.
All discussed concepts operate on a uniform interface that takes a fully specified trajectory
of position, velocity and acceleration in Cartesian space. This design of the interface can be
considered as a minor restriction, since trajectories for highspeed operation usually are
defined to be jerk limited (C 2 continuous) to reduce mechanical stress of the robot.
The chapter starts with a brief description of the discrete modeling scheme, afterwards a
compact formulation of the robots dynamics is derived. Several control schemes using this
model are presented, which can be classified into two major groups depending on the usage
of the robot model as feedback or feedforward type. Based on linearization techniques the
controllers for each axis are designed independently within a linear framework. The control
algorithms are augmented by disturbance observers to reduce distortion of trajectory and
tracking error.
Besides these classical approaches, nonlinear concepts such as sliding mode are used for
control. Using a boundary layer concept and adding discontinuities to the control law
ensures global asymptotic tracking with robustness against model uncertainties and
disturbances. Chattering formally associated with sliding mode can be coped with
modification of the control law by using continuous sliding surfaces. On contrary to the first
approaches it is inherently based on nonlinear design.
Considering properties of parallel robots the control schemes of described approaches are
designed. Explicit design rules are given at hand and discussed. For experiments the
concepts are implemented on a planar parallel robot. The unified approaches of modeling
and control guarantee transfer to more complex robots.
Evaluation of the results starts with a general comparison of control concepts. The effect of
the design parameters on closedloop system dynamics is analyzed theoretically, paying
18 Automation and Robotics
special attention to robustness and performance as essential characteristics. To substantiate
the statements of the theoretical analyses, experimental results are presented and evaluated
with respect to different aspects. Cartesian distortion, tracking error, drive torques and their
impact are of major concern. Finally, an overall categorization is given at hand, featuring
application hints for each design concept and pointing out specific drawbacks and
advantages.
2. Problem statement  control concepts on parallel robots
Robot structures based on closed kinematic chains have proven to be a promising
alternative to those based on serial chains. The feature of many of these so called parallel
kinematic structures to allow for the drives to be fixed to the base, is especially of great
interest for the design of robots for high speed handling and assembly tasks, cf. (Merlet,
2000). It enables a design with low moving masses allowing for high accelerations and
achieving shorter cycle times.
Due to the nonlinearities of the manipulator a modelbased control architecture is essential
to ensure precise trajectory tracking, which demands a precise and compact dynamic model.
Control schemes using this model are in general mainly based on centralized, decentralized
or on equivalent control (Spong & Vidyasagar, 1989), (Sciavicco & Siciliano, 2001). Whereas
first schemes allow an independent design of the controllers within a linear framework, the
latter is refined to sliding mode control as nonlinear designconcept, which shapes the error
dynamics of the system. Moreover, control design based on linearized subsystems offers a
wide range of linear control design schemes.
Due to different design aspects of these concepts specific advantages and aspects of
performance can be expected, which is addressed in this article.
Specific for parallel manipulators is a complex direct kinematic problem (DKP), which is in
general more complex than the inverse kinematic problem (IKP), cf. (Merlet, 2000). These
demands have to be met by control design: On the one hand a precise model is needed, on
the other hand the complexity is limited by computational effort in realtime operation.
3. Robot dynamics
In literature many different methods of modeling parallel robots have been proposed, based
on the approaches of the NewtonEuler method on the one hand (Spong & Vidyasagar,
1989) and the Lagrangian principle on the other hand (Tsai, 1999), (Murray et al., 1994). In
this paper, Lagrangian equations of the second type and the formulation of Lagrange
D'Alembert (Nakamura, 1991) will be used for obtaining a compact model, guaranteeing
computational efficiency in realtime control. The core idea herein is established on the use
of Jacobians for discrete modeling.
3.1 Discrete modeling
Discrete modeling of parallel structures can be divided into two major steps: Derivation of
manipulators Jacobian and calculation of differential equations.
The first step is discussed in (Stachera & Schumacher, 2007) and (Stachera et al., 2007),
where the calculation of Jacobians bases on cutting open the parallel structure at the
endeffector and applying the principle of kinetostatics (cf. section 3.3). Jacobian matrices of
Enhanced Motion Control Concepts on Parallel Robots 19
serial manipulators representing differential kinematic relation x = Jq and static relation
x = J f are used for deduction.
The second step  deduction of an exact model for a given structure  can be done via
LagrangeD'AlembertFormulation
dt
IF ^ = T + J f ext (1)
Dq) dq
with L = T V representing Lagrange function, T kinetic energy, V potential energy, q
vector of joint space variables, x actuator torques and J= G + serial manipulator Jacobian
on which external forces f ext are applied. Computing energy functions
T = q T M q (q)q, V=jq q (q)dq (2)
qo
leads to a differential equation in joint space coordinates:
M q (q)q + C q (q, q)q + q q (q) = x + J T f ext (3)
Its elements can be calculated, considering a discrete model; the main idea is based upon
discrete point masses rm: Starting with the simple case of planar structures each link can be
replaced by a combination of at least three single point masses without neglecting and
disturbing properties concerning mass, center of mass and moment of inertia, thus
guaranteeing correct dynamical behavior (Dizioglu, 1966). Without loss of generality this
concept can be transferred to more complex structures. With growing complexity in
structure the number of discrete elements increases, resulting in the finite element method.
The concept of discrete point masses leads to
M q = 2>Jz T Ji + dia g{ J m^m}
_aM q l ^Mq)
" q "^ dt 2 dq
C ±^± 11 ( 4 )
q dt 2
with drive inertia I m and g being vector of gravity. All Jacobians J; can be described by a
linear combination of endeffector and passive joints Jacobians.
The choice of CoriolisMatrix is not unique: Using ChristoffelSymbols and following the
notation of (Vetter, 1973) and (Weinmann, 1991) with discussion in (Bohn, 2000) leads to
20 Automation and Robotics
where (8) denotes the Kroneckerproduct, n q is the number of degrees of freedom of the
parallel structure and
^4^=#iMk^#
dq dq dq v q dq
A basic feature of this rearranging is skewsymmetry of M q  2C q , e.g.
w T (M q 2C q )w = , we^T 1 ** 1 '
(6)
(7)
which simplifies matrix usage for control algorithms (Sciavicco & Siciliano, 2001).
Without loss of generality this formalism can be enhanced for more complex structures
featuring elasticities or redundancies. It thus can be used for generalized parallel structures
considering an adequate discrete mass distribution.
3.2 Dynamics equations
Control in operational space requires coordinate transformation, resulting in
M x (q)x + C x (q,q)x + r x (q) = GT + f ext (8)
with
c x =r T
cj^+mj 1
(c q G T +M q G T ) (9)
M x =J T M q J 1 =GM q G T
f
V
% = J % = Gllq
where (7) still holds. Matrixdependence on joint space variables can be noted as
advantageous. These are measured and used for computation of the direct kinematic
problem (DKP).
3.3 Planar parallel manipulator Fivebar
For experimental setup a planar parallel structure with n q = 2 degrees of freedom, named
Fivebar (cf. fig. 1), is used. The end effector of the manipulator is connected to the drives by
two independent kinematic chains. Cranks and rods of the manipulator are made of carbon
fiber to reduce the weight of moved masses, thus being wellsuited for highspeed operation
with a maximum velocity v = 5 m/s and acceleration a = 70 m/s 2 in Cartesian space. The
control system consists of a PC running QNX and an IEEE 1394 FireWire link to the
inverters ensuring short cycle time and sufficient bandwidth for control purposes.
Applying deduced discrete modeling scheme requires determination of manipulators
Jacobian, which can be calculated via internal link forces f b = [/b /b f • Use of static
relations of the end effector results in
h = k s 2 l 1 £ ext =S\ xt (10)
Enhanced Motion Control Concepts on Parallel Robots
21
• m {i}
Fig. 1: Planar parallel manipulator Fivebar and its discrete model
Considering that the links connected to the end effector do not transmit transverse forces
(no elasticities featured), the Jacobian of the end effector point C can be deduced as
G + = diag{j Bi , J B2 } t diag{s 1 ,s 2 }S 1 =f c =f
(11)
representing the Jacobian of the parallel manipulator. Moreover, Jacobians of passive joints
can be determined via analytical differentiation of passive joint position in operational
space, which enables calculation of all other Jacobians as a linear combination. Hence the
discrete modeling scheme can be applied.
4. Control design
Control design is based on a torque driven interface to the inverters at bottom layer. Its
concepts first and foremost aim at tracking a trajectory specified by position, velocity and
acceleration {x ref , x ref , x ref } in the base frame of the robot.
In general two different approaches for design of the subordinated drivecontroller can be
noted: linear control concepts based upon linearization techniques on the one hand and
nonlinear ones such as sliding mode control on the other hand. Both provide a uniform
trajectory interface for the top layer, which ensures hybrid control within the taskframe
formalism, as discussed in (Kolbus et al., 2005), (Finkemeyer, 2004). Thus the manipulator is
not restricted to position control, but extendable to force control in operational space.
4.1 Linearization techniques: Feedback vs. Feedforward
Classical linear control concepts can be applied, if linearization techniques are used. These
can be distinguished between exact feedback linearization and computed torque
feedforward linearization (Isidori, 1995), (Spong & Vidyasagar, 1989), (Sciavicco & Siciliano,
2001).
The implementation of the inverse dynamic control is illustrated in fig. 2 where the
manipulator is assumed to be nonredundant. In case of redundancy the principle remains
the same, where additional actuator degrees of freedom can be used for internal pre
stressing of mechanical structure (Kock, 2001). The model derived in section 3 is used to set
the input to
= G" 1 M X « + G 1 S X , S x =C x x + ri x
(12)
22
Automation and Robotics
where u is the new external reference input. Its basic feature is the use of measured values
for linearization. Equation (12) renders the closed loop dynamical behavior of the overall
system to a set of decoupled double integrators in Cartesian space.
Computed torque feedforward linearization to the contrary uses reference values instead of
measured values. In implementation (cf. fig. 3) derived model is used to calculate the input
x = G ^x^ + G ^ f + M v , £ f = C x x ref + r\ x , M = G X M X G
T
(13)
where v represents the new reference input, analogues to exact feedback linearization. A set
of double integrators is obtained by eq. (13) for closed loop dynamics, this time, however, in
joint space.
x raf
G" 1 M X
T
G" 1 M X
— <
^
Robot
9
q
J
G" 1 $x
G^x
JL_
DKP
Robot
»IVl
•A »
*IAI
*\J *
Fig. 2: Feedback linearization
Fig. 3: Feedforward linearization
The delay of the inverters affects the described linearization. Instead of a set of double
integrators, feedback (eq. (12)) and feedforward linearization (eq. (13)) results in
T v tii = T p 
.(3)^v( 2 )
TyVi=T^ 3 KqP, ie {!,..., n q )
(14)
as description for the linearized subsystem, respectively, where T el denotes the delay of the
inverter and 7 V represents the virtual inertia of the linearized mechanical system. In
absence of model uncertainties linearization techniques yield T v = 1 . Nonlinear terms have
been neglected here, but are taken into account as disturbances for the design of the top
layer axis controller.
Comparing both concepts reveals important aspects: Whereas feedback linearization results
in control in operational space, e.g. centralized control, feedforward linearization leads to
decentralized control in joint space. The fact, that in general for parallel structures the IKP is
easier to solve than the DKP, suggests the use of computed torque feedforward linearization
for parallel manipulators. The advantage of feedback linearization on the other hand is the
decoupling of axes  single controllers do not compete.
In case of Fivebar the direct kinematic problem is of nearly the same complexity as the
inverse one, thus both concepts will be shown.
4.2 Linear cascaded control schemes: Centralized vs. Decentralized
Based upon linearization techniques described in former section, cascaded control schemes
can be developed. Following (Sciavicco & Siciliano, 2001) due to their difference in
linearization, they can be denoted as centralized control in case of feedback linearization on
the one hand and decentralized control or computed torque control on the other hand.
Enhanced Motion Control Concepts on Parallel Robots
23
Design is based upon the linearized subsystem given by eq. (14), resulting in a cascaded
control scheme, see fig 4. and fig. 5.
x rcf 
K/s)
V 2 J R ,T L
KM
v x J,
G _1 M X
G 1
C+%
+&+
Robot
9_^
DKP
* x
* X
Fig. 4: Cascade control / centralized control
c+fi,
Tfwd
G T
KM
IKP
KM
V 2 ,T R ,T L ~*Y~*"
V l ,T l
CM
Robot
Fig. 5: Computed torque control / decentralized control
The control laws  common for both control schemes  are described by transfer functions
K v (s) = Vl l^, K p (s) = V 2 TRS + 1
T t s
T L s + l
(15)
The parameters can be derived by symmetrical optimum design (Leonhard, 1996), which
maximizes the phase margin of control system and ensures stability in presence of model
uncertainties. The inherent overshoot of the velocity controller needs to be compensated by
the outer loop. Therefore, a simple proportional control law is insufficient and replaced by a
PTDcontr oiler that suppresses the overshot and offers better performance. By using the
damping D p = D v = 1 as parameter for closed loop design of velocity and positioncascade
one obtains
Vi=— , T,=9T el
Vi=l^> T R =3T e}/
81X
T, =T;
(16)
el
24
Automation and Robotics
A more detailed discussion can be found in (Leonhard, 1996).
Alternatively, parameters can be determined by comparing the denominator of the closed
loop dynamics with a model function. The damping D of one complex pole pair can be
chosen independently and all other poles are placed on real axis. Following the idea of
minimizing the integral of disturbance step response, the parameters are obtained as
Vi =
v 7
5D Z +1
16D 2 T el '
1
4T el (l + 2D /
r _ 4T el (5D 2 +l)
' 1+2D 2
T R =4T eU
(17)
which is discussed more widely in (Brunotte, 1999).
Whereas first design aims at maximizing phase margin and therefore targets robustness, the
second one tends to optimize feedforward dynamics and disturbance rejection. The second
design is preferable on parallel robots due to their high accelerations.
4.3 Disturbance observer based control
To improve disturbance rejection the concept of disturbance observers is well known in
literature. This method focuses on observing disturbances and using them as a feedforward
signal. A special concept, the principle of input balancing as introduced by (Brandenburg &
Papiernik, 1996) offers advantages on tracking as well as disturbance rejection. Its core idea
consists of a direct feedthrough in forward control amended by a disturbance observer. In
contrast to classical observers (Luenberger, 1964), (Lunze, 2006) this principle uses the
controlled velocity plant as model for observing disturbances, which leads to an
improvement in command action with improved robustness against external disturbances.
Formerly intended for linear systems the linearization techniques presented in section 4.1
ensure using input balancing for robot control. Based on the linearized subsystem given by
eq. (14) the control structure is illustrated in fig. 6.
x act
o
K
Fig. 6: Input balancing with centralized control
For computed torque control operational space references and measured values have to be
replaced by joint space variables.
Enhanced Motion Control Concepts on Parallel Robots
25
The control laws are described by transfer functions
K v (s) = V 1 , K p (s) = V 2
Kpt 2 (s) = 
a)
2D,
, K x (s) =
^s + 1
COq
T v s
(18)
Here K PT (s) represents the model of the closed loop velocity cascade, the disturbance
model is matched by an integrator K x (s) . Using D =1 for damping in position control
loop leads to parameters
3T el
9T el
2D
1 TT 2
O)
= 9T el
(19)
for control.
Using this control concept, an improvement in trajectory tracking compared to classical
cascaded control schemes can be expected  due to the observer. On the other hand model
uncertainties nonetheless have impact on the dynamical behavior (Wobbe et. al., 2006).
4.4 Sliding mode control
An approach to address an uncertain model is sliding mode control. The basic concept has
been discussed by (Utkin, 1977) and was taken up by (Slotine, 1983) with a general
definition of sliding surfaces and boundary layers to lessen the effect of chattering. This
section focuses on control via sliding mode of first order, see fig. 7  an extension to higher
order sliding modes to reduce chattering can be found in the works of (Levant & Friedman,
2002).
x ref
x sm
X rcf
x rcf
'
— ^
c x +4
1
< '
M x
1
G
~^
Robot
q »
DKP
Sliding Surface
Trajectory
x sm
— ^
*o *
q ,
— ^^
K
i
,
i
Fig. 7: Sliding mode control using continuous sliding surfaces
26 Automation and Robotics
On contrary to linear design concepts as cascade control and input balancing sliding mode
control is based on nonlinear design and focuses on the dynamics of the trackingerror
(Wobbe et aL, 2007), considered and defined by a sliding surface
s = x + Ax , x = x act  x ref (20)
with a positive definite matrix A . The error is restricted to the sliding surface by modifying
the reference trajectory and computing a virtual trajectory {x sm , x sm , x sm } with
t
x sm=Xref A { Xd * ( 21 )
This trajectory definition is used for the computation of the control law under use of
equivalent dynamics set point x eq in Filippov's sense (Slotine & Li, 1991), (Filippov, 1988)
x = Teq  u = G 1 (M x x sm + C x x sm + i\ x )  Ks (22)
where M x , C x and i\ x denote estimates of manipulator dynamics. The additional input u
ensures stability and precise tracking in the presence of model uncertainties. It copes
chattering formally associated with sliding mode control by the continuous sliding surface.
The control law features no discontinuities such as switching terms. The reduced tendency
of chattering is gained at the price of slightly reduced  but still outstanding  performance
compared to original switching concept.
The performance of control by sliding surfaces depends on matrix A with the delay of the
inverter being its most limiting factor. Thus parameters of sliding mode control are obtained
by
1 Ti nl
(23)
An improvement in performance can be obtained by focusing on the integral of tracking
error. Redefinition of the corresponding sliding surface
t
s = x + 2Ax + A 2 \xdt (24)
o
forces integral action and thus improves disturbance rejection.
5. Comparison of control concepts
Presented design concepts feature different characteristics. As essential among others the
performance of feedforwarddynamic, i.e. command action on the one hand and the
robustness against parameter variation, i.e. disturbance rejection are paid special attention,
revealing hints for range of application. Theoretical analysis here is based on the closed loop
dynamics considering applied linearization techniques.
1
1
, K = G _1 M X A
3T el
L u i J
Enhanced Motion Control Concepts on Parallel Robots
27
5.1 Performance
Performance of control concepts can be subdivided into groups: the linearization technique
and closed loop system dynamics of an equivalent linear system.
Referring to linearization three different methods have been presented: decentralized,
centralized and equivalent control. Performance analysis is widely spread in literature
(Whitcomb et al., 1993), (Slotine, 1985) and kept rather short for sake of simplicity. Main
characteristics are  referring to weak points of each technique  an influence of
measurement noise for centralized control, drift of linearization in case of trajectory
following error in decentralized control and both  however to a far lesser extend  for
equivalent control.
Closed loop system dynamics reveal different aspects on command action and disturbance
rejection, see tab.l
Cascade (1)
Cascade (2)
Input balancing
FF
4
1
1
(9T el s + l) 2 (9T el s + 4)
(4T el s + l) 3
(3T el s + l) 3
DIST
2187T e 3 1 s(T el s + l)
(9T el s + l) 2 (9T el s + 4)(3T el s + 1)
256T e 3 1 s(T el s + l)
(4T el s + l) 4
243T e 3 1 s(T el s + l)(3T e 2 lS 2 + 3T el s + 1)
(3T el s + l) 6
Tab. 1: Closed Loop Dynamics  Feedforward (FF) and Disturbance (DIST) of linear control
schemes
Input balancing offers a good bandwidth for command action, firstly presented control
design for cascade control (1) ranging up to 33% compared to this, which can be optimized
up to 75% with optimized parameters (2). Static disturbances are rejected by each control
scheme, with optimized cascade control providing good damping  outperformed just
slightly by input balancing.
Sliding mode control in comparison to linear control schemes possesses nonlinear closed
loop dynamics that can be subdivided into two parts. In case of absence of disturbances and
model uncertainties, its dynamics are described by sliding, i.e. referring to eq. (20) and (24)
12
the system output error x exponentially  with time constant — (— in case of integral
A A
action)  slides to zero. The system dynamics are matched by dynamics on the sliding
surface. In case of disturbances, model uncertainties or improper initial conditions,
additional dynamics are present, describing the reaching phase towards the sliding surface.
1
Its convergence mainly depends on K, considering eq. (23) leads to a time constant
A
The overall dynamics in case of disturbances d can thus be described by
M x x + (2M X A + C x )x + (M X A + C x )Ax = d
for classical sliding mode control and
(25)
28
Automation and Robotics
M x x + (3M X A + C x )x + (3M X A + 2C X ) Ax + (M x A + C x ) A 2 x = d
(26)
for sliding mode control with integral action. For sake of simplicity inverter dynamics have
been neglected. A consideration can be found in (Levant & Friedman, 2002) showing that
dynamics are pushed to sliding of order two with similar dynamics.
Comparing sliding mode to linear control design reveals an offset in disturbance rejection
for classical sliding mode control, which can be coped with integral action, cf. eq. (25) and
(26). It can be seen that chosen parameters lead to similar closed loop dynamics as input
balancing, however being nonlinear.
5.2 Robustness against model uncertainties
Robustness of the selected control scheme is an important issue when dealing with parallel
robots. The control concepts that base on linearization techniques use an underlying linear
controller to compensate model uncertainties and reject disturbances. Considering the
control laws introduced in section 4 each drive is treated individually. Important system
parameters for controller design are the inertia of the mechanical system T w and the delay
introduced by the inverter and communication 7 el , cf. eq. (14).
The virtual inertia comprises the drive and parts of the structure. Although compensated by
both linearization concepts, it varies in case of model uncertainties and payload changes.
Considering the structure of the cascaded controller, as introduced in fig. 4 and 5, the
transfer function for command action yields to
G c (s)
^PTD^PI^I1^PT1^I2
 GpiGnGpTl + ^PTD^PI^Il^PTl^H
(27)
The parameter uncertainties are included by an additional factor to the properties. The
systems inertia and delay are thus described by k TQ {T QX and k Tv T v , where 7 el and T v
represent the values used for controller design. Thus, the transfer function, eq. (27), can be
simplified by using eq. (17) to
G c (s)
4r el * + i
256T^k Tv k TQl s 4 + 256T^k Tv s 3 + 96T^s 2 +\6T Ql s + 1
a + \
(28)
4 3 2
k Te ik Tv a + 4k Tv a +6a +4a + \
To avoid the explicit solution of the fourthorder polynomial, the stability of the loop is
analyzed using Hurwitz' criteria. This yields to the determinant of the matrix
H,
256T Q \kj w
256T el k Tv k Tel
1
256T^k Tw 16J el
167 el
96T&
2 16 r e ^ Tv (6
*Tel)
(29)
The inequalities derived from the matrix are linearly dependent. To ensure stability there is
no limitation to factor k Ty , whereas the variation of the delay 7 el is restricted by
Enhanced Motion Control Concepts on Parallel Robots
29
H 3 > <^> 6  k Te i > <^> & Tel
(30)
which is illustrated in fig. 10. Besides stability, dynamic behavior of the control structure is
important. It is analyzed by the root locus of the system. Eq. (28) shows the general structure
of denominator. The pole placement is independent of T y and scaled by the delay 7 el . Thus,
the location of the poles with respect to the parameters £ Tel and k Tv is examined in a
normalized diagram. The results are shown in fig 8.
\D = 0.80\D = 0.70
D = 0.90
0.4
^^~ ^^ ^^ ^"N

0.2
^^ ^\ ^
^ >" "
 <™ — "
; x jji9j>
0.2
^^ "/
 /^"
^^ " ^ ^
/
0.4
^ ^ W
0.4
0.3
0.2
0.1
0.1
0.2
0.3
"°:15
D = 0.90 Q = 0.80 \D = 0.70
. 4 «
Fig. 8: Map of poles. Left: Mass is varied, right: Variation of delay. Green indicates that the
real value is larger then that used for controller design. The red dot marks the location in
case of no variation.
Since the factors & Tel and k v dire linearly scaled the plots reveal the sensitivity to parameter
variation. The actual damping of the outer loop is affected heavily by parameter mismatch.
The step response in fig. 9 illustrates the performance loss. Errors in the delay are again
more critical.
1.25r
0.5
0.25
1,2
1
0,75
Time
Time
Fig. 9: Step response of closed loop. Left: Variation of mass. Right: Variation of delay. The
response with correct parameters is plotted in red. Green indicates that the real value is
larger then that used for controller design, black marks the opposite.
30
Automation and Robotics
Assuming parameter variation in case of input balancing the transfer function can be
expressed by
Gib CO :
a 3 + 3a 2 +3a + \
kj y kj e ia + 3k Tv (1 + k TQ i)a + 3(1 + ^Tv^Tel + 3 ^Tv ) a + (3^tv + 1 l) a + 1 5a + 6a + 1
(31)
where a = 37 el s and controller parameters are set according to eq. (19). Though, the relative
degree of the system is still three, no poles and zeros are cancelled out, which leads to a
more complex dynamic. The stability limits are analyzed by Hurwitz criteria again
0"
1 (32)
6
IhJ > 0,/ 6 {2,3,4,5}, where H z are the upper left submatrices of H 5
Due to the high system order several inequalities have to be taken into account that lead to
the stability area shown in fig. 10. Compared to cascade control input balancing tolerates
lesser parameter uncertainties. Moreover, stability depends on the accuracy of inertia,
mirrored in parameter k Tv , as well.
3£ Tv (l + £ Tel )
9k Tv + 1 1
6
^Tv^Tel
3(1
+ ^Tv^Tel+ 3 ^Tel)
15
1
3£ Tv (i + yc Tel )
9£ Tv +ll
6
^Tv^Tel
3(1
+ ^Tv^Tel+ 3 ^Tel)
15
3k Tv (l + k TQl )
9£ Tv +ll
Fig. 10: Stability of linear control schemes dependent on variation
The polezero map of the transfer function, eq (31), is presented in fig. 11. Both parameters,
inertia and delay, have significant impact on system dynamics. In line with cascade control
scheme input balancing is more sensitive to variations, when parameters are assumed
smaller than in reality. This is substantiated by the step response of the system, see fig. 12,
which points out the lack of damping in case of wrong parameters. Both step responses (fig.
9, 12) are computed with the same parameter mismatch.
Enhanced Motion Control Concepts on Parallel Robots
31
VTly ;
Fig 11: Map of poles. Left: Mass is varied, right: Variation of delay. Green indicates that the
real value is greater than that used for controller design, whereas blue marks the opposite.
The red dot marks the location in case of no variation. The dashed line indicates the
damping cone for D=0.9, D=0.7 and D=0.5, respectively.
Fig. 12: Step response of closed loop (input balancing). Left: Variation of mass. Right:
Variation of delay. The response with correct parameters is plotted in red. Green indicates
that the real value is larger then that used for controller design, black marks the opposite.
Sliding mode control is more robust in view of parameter variation than control based upon
linearized subsystems; it features consideration of parameter uncertainties M x = M x  M x ,
C x = C x  C x and Ij x = rj x  r\ x in design. For a detailed analysis see (Slotine, 1985) where
one can see that sliding mode control guarantees robustness against parameter uncertainties
in case of integral action and is more robust than control schemes based upon linearization
techniques.
6. Experimental results
For experimental evaluation, controller designs are implemented to the planar parallel
manipulator Fivebar. For the sake of clarity a selection of the control schemes and design
parameters presented in section 4 has been made. The focus is on centralized and
32
Automation and Robotics
decentralized control (with optimized parameters) and its comparison to disturbance
observer based control via input balancing. Sliding mode control with integral action is
presented as nonlinear control scheme to compare nonlinear design performance to
linearization techniques based ones.
6.1 Experimental setup and performance criteria
For control purposes the concept of skill primitives is used. The main idea consists of
specifying a task and a terminating condition that lead to execution of next skill primitive.
We here use the position accuracy £ pos as terminating condition for each axis separately.
Workspace of the parallel robot Fivebar is illustrated in fig 13. A common trajectory for all
setups is used to guarantee comparable results. The selected path covers the workspace
almost completely, including positions close to singularities. It consists of 6 parts, each
resembled by a skill primitive. The trajectory is generated piecewise and terminates with
both axes fulfilling specified position accuracy.
For evaluation of controller performance different criteria are used: Concerning tracking
error, a timeintegral of absolute tracking error (ITAE) A tx . is used. It is defined for each
axis in Cartesian coordinates,
^t,%i ~ J X z,ref _x z',actd£
(33)
respectively and gives a benchmark of in time execution of trajectory.
Specification of trajectory
Velocity
l x l
1 Imax
2 m/s
Acceleration
lxl
1 Imax
40 m/s 2
Jerk
lxl
1 Imax
600 m/s 3
Position accuracy
^pos
300 jum
0.2
x in m
Fig. 13: Workspace and experimental setup of Fivebar in initial position
Secondly, a positionintegral of absolute Cartesian distortion (IACD) A A is defined for
benchmarking pathaccuracy in operational space
A A = fyreffeef)yact(^ref) d ^ref
(34)
It represents the absolute size of distortion areas and thus indicates accuracy of the end
effector path with respect to the trajectory.
Moreover, settling time
Enhanced Motion Control Concepts on Parallel Robots
33
^settling _ ^nextSKP ~ ^endSKP
(35)
is considered, where £ en dSKP denotes time when the actual skill primitive ends and £ next sKP
represents the point of next skill primitive starting. They are defined by
\*i (* ^ ^nextSKP ) ^ s pos / WsKP ~ * I U*
ref
= A X
ref
= o)
(36)
In addition maximum tracking error A trk 2  and maximum overshooting during settling time
A set/Z  defined by
A trk,i =max xz(0
A setA= max \\*i( t )\
t e UnextSKPWsKPJ
* e I ^endSKP • • ^nextSKP I
(37)
are evaluated.
Performance criteria could easily be extended  selected set is sufficient for an overview of
performance instead of a claim to be overarching.
6.2 Data presentation
Plots of experimental results and data concerning trajectory are given in fig. 1519, and used
for benchmarks in the following.
It can be seen that overshooting during trajectory follow up is in general of higher value
than during settling time, due to chosen high dynamics. Examining average settling time on
centralized and decentralized control reveals that disturbance observers improve this
property as expected by theoretical analysis in section 5. Furthermore maximum
overshooting during trajectory follow up is reduced, which is also reflected in Cartesian
distortion error, cf. fig. 14(b).
§■ Cascade Control
^M Input Balancing
CZI Computed Torque
CZI Input Balancing CT
□ Sliding Mode
(a
yAxis
8000
7000
6000
5000
:4000
1 3000
2000
1000
(b)
(c)
Fig. 14: Time integral of tracking error (a), Cartesian distortion (b) and maximum
overshooting during settling time (c)
34
Automation and Robotics
In comparing both linearization techniques with respect to Cartesian distortion, cf. fig. 14(a),
and maximum overshooting during settling time, cf. fig. 14(c), it can be seen that cascade
control with exact feedback linearization seems of better quality than computed torque
control. The reason can be found in focus of control. While cascade control is operating in
Cartesian space, computed torque addresses joint space. Thus an appropriate error in joint
space is nonlinear (depending on position) transformed into Cartesian space.
Concerning nonlinear control design it can be seen that sliding mode control exhibits an
overall up to best performance. All criteria except settling time range in high performance
being only outperformed by input balancing concerning Cartesian distortion (fig. 14(b)).
This is met by a far lesser overshooting during settling time (fig 14(c)) which substantiates
the performance of sliding mode control. Due to inclusion of uncertainties in design its
disturbance rejection during trajectory following up equals observer performance via input
balancing. Its advantage compared to linear based controller design lies within its
robustness against model uncertainties. As seen in section 5, linear design  especially input
balancing  is more sensitive to variation of parameters, cf. fig. 11. This leads to loss of
damping and can clearly be seen in settling times here (fig. 16). Input balancing shows large
values in overshooting, indicating a parameter mismatch, while sliding mode control with
same modelparameters offers far less overshooting. However, problems in positions close
to workspace boundaries arise, which are indicated by a longer settling time after trajectory
part 3 and 5, cf. fig. 19. In case of linear control schemes on the contrary these positions do
not seem to have a significant impact on settling time, cf. fig. 1518. The reasons can be
found in nonlinear design, resulting in nonlinear closed loop dynamics and in design of
sliding surface dynamics with integral action. Therefore a higher average settling time in
case of sliding mode control can be seen. However, on other parts of the trajectory settling
time is smaller than in case of all other control schemes.
X
y
A trk
10.7 mm
7.8 mm
A set
1.7 mm
2.4 mm
^settling
0.75 s
Fig. 15: Experimental Results on cascade control
Enhanced Motion Control Concepts on Parallel Robots
35
X 
y
A trk
8.1 mm
7.2 mm
A set
7.6 mm
6.4 mm
^settling
0.43 s
0.2
x in in
Fig. 16: Experimental Results on input balancing
X
y
A trk
14.2 mm
9.4 mm
A set
1.6 mm
6.2 mm
^settling
0.91s
tins
0.6
0.4
a 02
/ \
j
V
/ ^
\
r 
r
\ ,
\
\
L
\
a
o
1 °
0.2
0.4
1
J
\
r
10
t in s
Fig. 17: Experimental Results on computed torque control
X
y
A trk
12.9 mm
9.7 mm
A set
5.5 mm
2.8 mm
^settling
0.67 s
Fig. 18: Experimental Results on computed torque with input balancing
36
Automation and Robotics
X 
y
A trk
3.9 mm
6.6 mm
A set
2.7 mm
1.8 mm
^settling
3.37 s
0.2
x in m
Fig. 19: Experimental Results on sliding mode control
Towards chattering associated with sliding mode control the continuous control lessens this
tendency as can be seen in fig. 20. Here a single drive torque during a trajectory part is
compared to cascade control. Although frequency analysis reveals energy in frequencies
next to the characteristic ones of cascade control, it can be seen that these are damped well in
contrast to classical sliding mode control with discontinuous control law.
a 1
<
i i 1 i
. : A
Lik.Li
50 100 150 200 250 300
/ in Hz
Fig. 20: Comparison of torques of linear and nonlinear design
Comparing presented results it can be seen that each control scheme features specific
advantages, cf. tab. 2. The performance of each controller lies within its concept of design.
Centralized, i.e. cascade control with feedback linearization guarantees tracking whereas
disturbance rejection is not explicitly included in design process. Thus parameter
uncertainties in modeling result in cross coupling of axes by inverse dynamic control
scheme, cf. eq. (12) and (13). This can be matched by use of disturbance observers as the
concept of input balancing, reducing Cartesian distortion and time integral of tracking error.
As a drawback, however, a parameter mismatch leads to a loss of damping resulting in a
higher overshooting during settling time. This can be improved by explicitly considering
model and parameteruncertainties via sliding mode control at the cost of position
dependent settling dynamics.
Enhanced Motion Control Concepts on Parallel Robots
37
Decentralized, i.e. computed torque control reveals a good performance, and becomes
handy when the direct kinematic problem is not computational efficient anymore. For
control concepts considering wide range parameter variation other concepts have to be
focused  such as adaptive control, which is discussed in (Hesselbach et al., 2004) with
experimental benchmarking.
CC
CT
IB
SMC
Path accuracy
+
o
++
+
Tracking
o
+
+
++
Axis coupling



+
Robustness against model uncertainties
o
o

+
Disturbance rejection
o
o
+
++
Axis independent design
+
o
+
+
Velocity noise
+
++
++
o
Chattering
++
++
+
o
Execution time
+
o
++
.(++)
Tab. 2: Properties of different control approaches: CC  cascade control, CT  computed
torque control, IB  input balancing, SMC  sliding mode control
7. Conclusion
Different model based control architectures have been analyzed and compared by
experimental studies. Experiments were carried out on a planar parallel robot optimized for
highspeed operation.
Starting with a generalized scheme for discrete modeling of parallel structures, design of
controllers are given at hand and discussed with respect to performance and robustness.
Performance of each control design was analyzed and compared. In experimental results
design concepts are validated, revealing that sliding mode control is a promising alternative
to classical linear design concepts on parallel robots. Its main advantage is explicit inclusion
of uncertainties to the design of the controller, whereas centralized and decentralized
control just consider the nonlinearities on the innermost level.
Control by sliding surfaces demands a trajectory specified in position, velocity and
acceleration. In the fields of robotics, however, providing a full trajectory is no real
restriction, because these are planned jerkbounded to prevent the mechanical structure
from being damaged.
38 Automation and Robotics
Nonetheless centralized and decentralized control feature certain advantages. Computed
torque control is the best solution in case of complex direct kinematics, guaranteeing real
time execution. Best suppression of noisy velocity signals is featured since these do not
influence the feedforwardlinearization. Centralized control provides good path accuracy
and is worth to be extended by input balancing in case of absence of parameter uncertainties
improving Cartesian distortion. It is optimized towards disturbance rejection, however lacks
robustness against parameter uncertainties.
In case of large parameter variations  for example caused by payloads  presented methods
can be extended to parameter adaption, which sliding mode control and computed torque
control fit best for.
8. Acknowledgements
This work was funded by the German Research Foundation (DFG) within the framework of
the Collaborative Research Center SFB 562 "Robotic Systems for Handling and Assembly".
We would like to thank QNX for providing licenses of the realtime operating system.
9. References
Bohn, C. (2000), Recursive parameter estimation for nonlinear continuoustime systems
through sensitivity modelbased adaptive filters, Ph.D. dissertation, Ruhr
Universitat Bochum, 2000.
Brandenburg, G.; Papiernik, W. (1996). Feedforward and Feedback Strategies Applying the
Principle of Input Balancing for Minimal Tracking Errors in CNC Machine Tools,
Proc. of 4th International Workshop on Advanced Motion Control (AMC '96), pp.
612618 vol.2., Mie, March 1996, Japan.
Brunotte, Ch. (1999). Regelung und Identifizierung von Linearmotoren fuer
Werkzeugmaschinen, Ph.D. dissertation, University of Braunschweig (in German).
Dizioglu, B. (1966). Getriebelehre. Bd. 3. Dynamik. Vieweg, Braunschweig (in German).
Filippov, A.F. (1988). Differential equations with discontinuous righthand sides, Springer,
ISBN: 9789027726995, Netherlands.
Finkemeyer, B. (2004). Robotersteuerungsarchitektur auf Basis von Aktionsprimitiven, Ph.D.
dissertation, University of Braunschweig (in German).
Hesselbach, J.; Pietsch, I.T., Bier, C.C, Becker, O.T. (2004). Modelbased Control of Plane
Parallel Robots  How to Choose the Appropriate Approach?, Proc. of 4th Chemnitz
Parallel Kinematics Seminar (PKS2004), pp. 211231, Chemnitz, April 2004, Germany.
Isidori, A. (1995). Nonlinear Control Systems, Springer, ISBN: 9783540199168, London.
Kock, S. (2001). Parallelroboter mit Antriebredundanz, Ph.D. dissertation, Fortschritt
Berichte VDI, Duesseldorf  Braunschweig (in German).
Kolbus, M.; Reisinger, T.; Maafi, J. (2005). Robot Control Based on Skill Primitives, Proc. of
IASTED Conf. on Robotics and Applications, pp. 260266, Camebridge, October
2005, USA.
Leonhard, W. (1996). Control of Electrical Drives, Springer, ISBN: 9783540418207, Berlin 
Heidelberg  New York.
Enhanced Motion Control Concepts on Parallel Robots 39
Levant, A.; Friedman, L. (2002). Higher Order Sliding Modes, In: Sliding Mode Control in
Engineering (Control Engineering Series, 11), Perruquetti, W.; Barbot, J.P. pp. 53
101, Marcel Dekker, Inc., ISBN: 9780824706715, New York.
Luenberger, D.G. (1964). Observing the state ov a linear system, IEEE Transactions on
Military Electronics, pp. 7480.
Lunze, J. (2006). Regelungstechnik 2: Mehrgrofiensysteme, Digitale Regelung, Springer,
ISBN: 9783540323358, Berlin
Merlet, J.P. (2000). Parallel Robots, Kluwer Academic Publishers, Springer, ISBN: 978
1402041327, Netherlands.
Murray, R.M., Li, Z., Sastry, S.S. (1994), A mathematical introduction to robotic
manipulation. CRC Press LLC, ISBN: 9780849379819, USA.
Nakamura, Y. (1991). Advanced robotics: redundancy and optimization, Addison Wesley
Publishing Company, Inc., ISBN: 9780201151985.
Sciavicco, L.; Siciliano, B. (2001). Modelling and Control of Robot Manipulators, Springer,
ISBN: 9781852332211, Berlin.
Stachera, K.; Schumacher, W. (2007). Simultaneous calculation of the direct dynamics of the
elastic parallel manipulators, Proc. of the 13th IEEE IF AC International Conference
on Methods and Models in Automation, pp. 863868, Szczecin, August 2007,
Poland.
Stachera, K.; Wobbe, F.; Schumacher, W. (2007). Jacobianbased derivation of dynamics
equations of elastic parallel manipulators, Proc. of the IASTED Asian Conference
on Modelling and Simulation (AsiaMS 2007), pp. 4754, Beijing, October 2007,
China.
Spong, M. W.; Vidyasagar, M. (1989). Robot dynamics and control, John Wiley & Sons, Inc.,
ISBN: 9780471612438, USA.
Slotine, J.J. (1983). Tracking Control of Nonlinear Systems Using Sliding Surfaces, Doctoral
Dissertation, Massachusetts Institute of Technology.
Slotine, J.J. (1985). The Robust Control of Robot Manipulators, International Journal of
Robotics Research, vol. 4, no. 2, pp. 4964, 1985.
Slotine, J.J.; Li, W. (1991). Applied Nonlinear Control, Prentice Hall, ISBN: 9780130408907,
New Jersey.
Tsai, L.W. (1999), Robot Analysis, WileyInterscience; ISBN: 9780471325932, New York.
Utkin, V.I. (1977). A Survey: Variable Structure Systems with Sliding Modes, IEEE
Transactions on Automatic Control , vol. 22, no. 2, pp. 212222, April 1977.
Vetter, W. (1973). Matrix calculus operations and taylor expansions, SI AM Review, vol. 15,
pp. 352369, 1973.
Weinmann, A. (1991). Uncertain mod and robust control, Springer, ISBN: 9783211822999,
Wien.
Whitcomb, L.L.; Rizzi, A.; Koditschek, D.E. (1993), Comparative Experiments with a New
Adaptive Controller for Robot Arms, IEEE Transactions on Robotics and
Automation, vol. 9, no. 1, pp 5970, Februar 1993.
40 Automation and Robotics
Wobbe, F.; Schumacher, W.; Bbske, W. (2006). Optimierte Antriebsreglerstrukturen zur
Storunterdriickung, SPS/ IPC/ DRIVES 2006, Ntirnberg (in German)
Wobbe, F.; Kolbus, M.; Schumacher, W. (2007). Continuous Sliding Surfaces versus Classical
Control Concepts on Parallel Robots, Proc. of the 13th IEEE IF AC International
Conference on Methods and Models in Automation, pp. 869874, Szczecin, August
2007, Poland.
Vision Guided Robot Gripping Systems
Zdzislaw Kowalczuk and Daniel Wesierski
Gdansk University of Technology
Poland
1. Description of the past and recent trends in robot positioning systems
Industrial robots are used customary without any embedded sensors. They rely on a
predictable pose of an object (position and orientation in 6 degrees of freedom, 6DOF) when
performing the task of gripping parts located for instance on palettes or assembly lines. In
practice though, a part can easily deviate from its ideal nominal location and a robot having
no embedded sensors can miss or crash into the object. This would lead to damages and
downtime of such an assembly line.
1.1 Manual and automated part acquisition
Manual part acquisition involves human employment. Clearly, it is not a good solution
because humans are exposed to possible injuries, what increasing medical and social costs.
Parts are often sharp and heavy. Yet, they are not sterile. Contamination (for instance, dust,
oil, hair etc.) transferred to critical areas of the object leads to reduction in the quality of
assembly (inevitably followed by product recalls).
Conventionally, automated gripping relied on intricate mechanical and electromechanical
devices known as precision fixtures, which were utilized to ensure that the part was always
at the programmed pose with respect to the robot. The design of such fixtures is though
expensive, imposes design constraints, requires frequent maintenance, and has a reduced
flexibility.
1.2 2D and 3D robot positioning
Over the years a variety of techniques have been developed to automate the process of
gripping parts as an alternative to the existing manual part acquisition. Due to the rapidly
evolving machine vision technology, vision sensors are playing today a key role in the three
dimensional robot positioning systems. They are not only cheaper but also far more
effective.
A robot with an embedded vision sensor can have greater 'awareness 7 of the scene. It can
grip objects, which can be nonfixtured, stacked or loosely located. Thus, it enables the robot
to grip objects that are provided in racks, bins, or on pallets. Regardless of the presentation,
a visionguided robot can locate an object for further processing. This generic application of
robotic guidance is applied in industries such as automotive for the location of power train
components, sheet metal body parts, complete car bodies, and other parts used in assembly.
Other industries such as food, pharmaceutical, glass and daily products apply vision guided
robotic technology to their applications, as well.
42 Automation and Robotics
As a response to the industry needs two major techniques have emerged: 2D and 3D
machine vision. Twodimensional machine vision is a welldeveloped technique and has
been successfully implemented in the past years. 2D robotic vision systems locate the object
in 3 degrees of freedom (x, y, and roll angle) based on one image. Consequently, the main
limitation of 2D vision is its inability to compute part's rotation outside of a single plane.
Unfortunately, this does not suffice in many applications that aim to eliminate, for instance,
the precision fixtures in order to achieve greater versatility. 2D vision systems have proved
to be very useful in picking objects from moving conveyors. Calibration of such robotic
systems requires relatively simple methods.
The problem of creating a visionguided robot positioning system for 3D part acquisition
has apparently been studied before. 3D machine vision systems locate the object in 6 degrees
of freedom (x, y, z and yaw, pitch, roll). We can distinguish here singleimage systems which
compute the object's pose iteratively using only one image, stereo systems which compute
the pose analytically based on two overlapping images, and multivision systems, which
combine the stereosystems in a conventional manner to increase robustness and precision.
The 3D vision applications, which can position the robot to grip a rigid object using
information derived only from one image, are gaining an increasing attention. The distances
between the object features have to be known to the system beforehand for the purpose of
computing the object's pose iteratively based on some minimized criteria. This information
can be taken from a CAD model of the object in a modelbased approach. Since only one
camera is required, the cost of the whole plant is reduced, the cycle time is decreased, and
the calibration process is made easier. Yet, finding features in one image (and not in
multiple images) is simpler for image processing applications (IPAs). However, oneimage
methods have several drawbacks. One of them is that there are some critical configurations
of points in 3D space, which could limit the number of potential features of the object for
IPA. Another disadvantage is that these methods give good results if more than 5 points are
found on the object what increases the processing time of IPA, and, more importantly, it
increases the risk that not all points are found by IPA what can bring about stopping the
plant and the entire assembly line.
Stereovision is thus far more often used in 3D positioning systems as it is simple to be
implemented due to its analytical form. It computes the distance between the object features
and the vision sensors, and derives all 3 coordinates of a feature. Having computed at least 3
features, the pose of the object can be determined. Commonly, more points are used to
provide a certain degree of redundancy. This method has several disadvantages though: it is
relatively sensitive to noise, identification of the corresponding features in two images can
be very difficult (although the epipolar geometry of stereo cameras is very helpful here), and
its application is confined to small objects due to a relatively small field of view. Multi
stereosystems are used to compute the pose of bigger objects as they can examine them
from opposite sides.
1.3 Retrieving information based on laser vision
Laser vision plays a vital role in 3D part acquisition tasks, as well. By painting a part's
surface with a laser beam (coherent light), a laser triangulation sensor can determine the
depth and the orientation of the surface observed. Although such measurements are very
precise, the use of lasers has several drawbacks, such as long process of relating the features
to the 'point cloud' data, shadowing/ occlusion, as well as ergonomic issues when deployed
Vision Guided Robot Gripping Systems 43
near human operators. Moreover, lasers require using sophisticated interlock mechanisms,
protective curtains, and goggles, which is very expensive.
1.4 Flexible assembly systems
Apart from integrating robots with machine vision, the assembly technology takes yet
another interesting course. It aims to develop intelligent systems supporting human
workers instead of replacing them. Such an effect can be gained by combining human skills
(in particular, flexibility and intelligence) with the advantages of machine systems. It allows
for creating a next generation of flexible assembly and technology processes. Their
objectives cover the development of concepts, control algorithms and prototypes of
intelligent assist robotic systems that allow workplace sharing (assistant robots), time
sharing with human workers, and pure collaboration with human workers in assembly
processes. In order to fulfill these objectives new intelligent prototype robots are to be
developed that integrate power assistance, motion guidance, advanced interaction control
through sophisticated humanmachine interfaces as well as multiarm robotic systems,
which integrate human skillfulness and manipulation capabilities.
Taking into account the above remarks, an analytical robot positioning system (Kowalczuk
& Wesierski, 2007) guided by stereovision has been developed achieving the repeatability of
±1 mm and ±1 deg as a response to rising demands for safe, costeffective, versatile, precise,
and automated gripping of rigid objects, deviated in threedimensional space (in 6DOF).
After calibration, the system can be assessed for gripping parts during depalletizing, racking
and unracking, picking from assembly lines or even from bins, in which the parts are
placed randomly. Such an effect is not possible to be obtained by robots without vision
guidance. The Matlab Calibration Toolbox (MCT) software can be used for calibrating the
system. Mathematical formulas for robot positioning and calibration developed here can be
implemented in industrial tracking algorithms.
2. 3D object pose estimation based on single and stereo images
The entire visionguided robot positioning system for object picking shall consist of three
essential software modules: image processing application to retrieve object's features,
mathematics involving calibration and transformations between CSs to grip the object, and
communication interface to control the automatic process of gripping.
2.1 Camera model
In this chapter we explain how to map a point from a 3D scene onto the 2D image plane of
the camera. In particular, we distinguish several parameters of the camera to determine the
point mapping mathematically. These parameters comprise a model of the camera applied.
In particular, such a model represents a mathematical description of how the light reflected
or emitted at points in a 3D scene is projected onto the image plane of the camera. In this
Section we will be concerned with a projective camera model often referred to as a pinhole
camera model. It is a model of a pinhole camera having its aperture infinitely small (reduced
to a single point). With such a model, a point in space, represented by a vector characterized
by three coordinates r c =\x c y c zC \> is mapped to a point r s =\x s y s J in the
sensor plane, where the line joining the point r c with a center of projection Oc meets the
44
Automation and Robotics
sensor plane, as shown in Fig.l. The center of projection Oc , also called the camera center, is
the origin of a coordinate system (CS) \Jt c ,Y c ,Z c } in which the point r c is defined (later
on, this system we will be referred to as the Camera CS). By using the triangle similarity rule
(confer Fig.l) one can easily see that the point r c is mapped to the following point:
~fc
that means that
f Z£ 
Jc z c
(1)
which describes the central projection mapping from Euclidean space R 3 to R 2 . As the
coordinate z c cannot be reconstructed, the depth information is lost.
Fig. 1. Right side view of the cameralens system
The line passing through the camera center Oc and perpendicular to the sensor plane is
called the principal axis of the camera. The point where the principal axis meets the sensor
plane is called a principal point, which is denoted in Fig. 1 as C.
The projected point r s has negative coordinates with respect to the positive coordinates of
the point r c due to the fact that the projection inverts the image. Let us consider, for
instance, the coordinate y c of the point r c . It has a negative value in space because the axis
Y c points downwards. However, after projecting it onto the sensor plane it gains a positive
value. The same concerns the coordinate x c . In order to omit introducing negative
coordinates to point r s , we can rotate the image plane by 180 deg around the axes X c and
Vision Guided Robot Gripping Systems
45
Y c obtaining a nonexistent plane, called an imaginary sensor plane. As can be seen in Fig. 1,
— S" — c
the coordinates of the point r directly correspond to the coordinates of point r , and the
projection law holds as well. In this Chapter we shall thus refer to the imaginary sensor
plane.
Consequently, the central projection can be written in terms of matrix multiplication:
v
' f x 
Jc z c
y c
z c
>
f £
Jc z c
1
fc
fc
r c ~\
X
c
z
c
y
c
z
1
1
(2)
fc
M =
fc
1
is called a camera matrix.
The pinhole camera describes the ideal projection. As we use CCD cameras with lens, the
above model is not sufficient enough for precise measurements because factors like
rectangular pixels and lens distortions can easily occur. In order to describe the point
mapping more accurately, i.e. from the 3D scene measured in millimeters onto the image
plane measured in pixels, we extend our pinhole model by introducing additional
parameters into both the camera matrix M and the projection equation (2). These parameters
will be referred to as intern camera parameters.
Intern camera parameters The list of intern camera parameters contains the following
components:
• distortion
• focal length (also known as a camera constant)
• principal point offset
• skew coefficient.
Distortion In optics the phenomenon of distortion refers to lens and is called lens distortion.
It is an abnormal rendering of lines of an image, which most commonly appear to be
bending inward {pincushion distortion) or outward {barrel distortion), as shown in Fig. 2.
Fig. 2. Distortion: lines forming pincushion (left image) and lines forming a barrel (right
image)
Since distortion is a principal phenomenon that affects the light rays producing an image,
initially we have to apply the distortion parameters to the following normalized camera
coordinates
46
Automation and Robotics
r c
Using the above and letting h 
follows:
+y n
 \ 1 T
L norm J norm J
we can include the effect of distortion as
x d ={[ + k { h 2 +k 2 h 4 + k 5 h 6 )x norm + dx x
y d = (l + k x h 2 +k 2 h A + k 5 h 6 )y norm + dy x
(3)
where Xd and yd stand for normalized distorted coordinates and dx\ and dxi are tangential
distortion parameters defined as:
dx, = 2k, x v
1 3 norm y norm
dx 2 =2k 3 (h 2 +2yl. m )+2k,
+ k 4 (h 2 +2x 2 norm )
(4)
The distortion parameters k\ through fe describe both radial and tangential distortion. Such
a model introduced by Brown in 1966 and called a "Plumb Bob" model is used in the MCT
tool.
Focal length Each camera has an intern parameter called focal length f c , also called a camera
constant. It is the distance from the center of projection Oc to the sensor plane and is directly
related to the focal length of the lens, as shown in Fig. 3. Lens focal length /is the distance in
air from the center of projection Oc to the focus, also known as focal point.
In Fig. 3 the light rays coming from one point of the object converge onto the sensor plane
creating a sharp image. Obviously, the distance d from the camera to an object can vary.
Hence, the camera constant f c has to be adjusted to different positions of the object by
moving the lens to the right or left along the principal axis (here Z c axis), which changes
the distance \OC\ . Certainly, the lens focal length always remains the same, that is
\OF\ = const.
Fig. 3. Left side view of the cameralens system
Vision Guided Robot Gripping Systems
47
The camera focal length f c might be roughly derived from the thin lens formula:
fc
1 1
■ + — = —
d f
fc =
fd
df
(5)
Without loss of generality, let us assume that a lens has its focal length of / = 16 mm. The
graph below represents the camera constant f c (d) as a function of the distance d.
tfc [mm]
d [mm]
800 1000 1200 1400 1600 1800 2000
Fig. 4. Camera constant f c in terms of the distance d
As can be seen from equation (5), when the distance goes to infinity, the camera constant
equals to the focal length of the lens, what can be inferred from Fig. 4, as well. Since in
industrial applications the distance ranges from 200 to 5000 mm, it is clear that the camera
constant is always greater than the focal length of the lens. Because physical measurement of
the distance is overly erroneous, it is generally recommended to use calibrating algorithms,
like MCT, to extract this parameter. Let us assume for the time being that the camera matrix
is represented by
K
fc
0"
fc
1
Principal point offset The location of the principal point C on the sensor plane is most
important since it strongly influences the precision of measurements. As has already been
mentioned above, the principal point is the place where the principal axis meets the sensor
plane. In CCD camera systems the term principal axis refers to the lens, as shown in both
Fig. 1 and Fig. 3. Thus it is not the camera but the lens mounted on the camera that
determines this point and the camera's coordinate system.
In (1) it is assumed that the origin of the sensor plane is at the principal point, so that the
Sensor Coordinate System is parallel to the Camera CS and their origins are only the camera
constant away from each other. It is, however, not truthful in reality. Thus we have to
48
Automation and Robotics
compute a principal point offset [c 0x C ] T from the sensor center, and extend the camera
matrix by this parameter so that the projected point can be correctly determined in the
Sensor CS (shifted parallel to the Camera CS). Consequently, we have the following
mapping:
V
»
JC r + ^Ox
' c z c
fc
■c n
Introducing this parameter to the camera matrix results in
K
fc C 0x
f c c 0y
1
As CCD cameras are never perfect, it is most likely that CCD chips have pixels, which are
not of the shape of a square. The image coordinates, however, are measured in square
pixels. This has certainly an extra effect of introducing unequal scale factors in each
direction. In particular, if the number of pixels per unit distance (per millimeter) in image
coordinates are m x and m y in the directions x and y , respectively, then the camera
transformation from space coordinates measured in millimeters to pixel coordinates can be
gained by premultiplying the camera matrix M by a matrix factor diag(m X/ m y , 1). The
camera matrix can then be estimated as
K =
m x
0]
m v
y
lj
C<Jx
fc
C y
=> K =
1
fcpl
C()xp
fcpl
C Oyp
1
where f 1 = f c m x and f c2 = f c m re P resen t the focal length of the camera in terms of
pixels in the x and y directions, respectively. The ratio f x I '/ 2 / called an aspect ratio, gives
a simple measure of regularity meaning that the closer it is to 1 the nearer to squares are the
pixels. It is very convenient to express the matrix M in terms of pixels because the data
forming an image are determined in pixels and there is no need to recompute the intern
camera parameters into millimeters.
Skew coefficient Skewing does not exist in most regular cameras. However, in certain
unusual instances it can be present. A skew parameter, which in CCD cameras relates to
pixels, determines how pixels in a CCD array are skewed, that is to what extent the x and y
axes of a pixel are not perpendicular. Principally, the CCD camera model assumes that the
image has been stretched by some factor in the two axial directions. If it is stretched in a
nonaxial direction, then skewing results. Taking the skew parameter into considerations
yields the following form of the camera matrix:
K
C
Oxp
JCpl
^ JCpl ^Oyp
1
c n
Vision Guided Robot Gripping Systems
49
This form of the camera matrix (M) allows us to calculate the pixel coordinates of a point
r c cast from a 3D scene into the sensor plane (assuming that we know the original
coordinates):
(6)
Since images are recorded through the CCD sensor, we have to consider closely the image
plane, too. The origin of the sensor plane lies exactly in the middle, while the origin of the
Image CS is always located in the upper left corner of the image. Let us assume that the
principal point offset is known and the resolution of the camera is N x xN^ pixels. As the
center of the sensor plane lies intuitively in the middle of the image, the principal point
V"
JCpl
^Oxp
*d
/
=
JCpl
Coyp
y d
1
1
i
+ c,
Oxp
offset, denoted as [cc x cc ] , with respect to the Image CS is
2 ~ uxp 2
Hence the full form of the camera matrix suitable for the pinhole camera model is
N r
N 1;
■ + c,
Oyp
(7)
Consequently,
c r c c
r =[x y
fcpl s cc x
M= f cp2 cc y
1 ^
a complete equation describing the projection of the point
z c Y from the camera's threedimensional scene to the point r 1 =\ X I y J J
in the camera's Image CS has the following form:
Jcpl
cc
Jcp2
cc
1
(8)
where Xd and yd stand for the normalized distorted camera coordinates as in (3).
2.2 Conventions on the orientation matrix of the rigid body transformation
There are various industrial tasks in which a robotic plant can be utilized. For example, a
robot with its tool mounted on a robotic flange can be used for welding, body painting or
gripping objects. To automate this process, an object, a tool, and a complete mechanism
itself have their own fixed coordinate systems assigned. These CSs are rotated and
translated w.r.t. each other. Their relations are determined in the form of certain
mathematical transformations T.
Let us assume that we have two coordinate systems {Fl} and {¥2} shifted and rotated w.r.t.
to each other. The mapping Fl T F2 = [ Fl R F2 , Fl K F2 ) in a threedimensional space can be
represented by the following 4x4 homogenous coordinate transformation matrix:
R f
,K f
(9a)
50
Automation and Robotics
where Fl R F2 is a 3x3 orthogonal rotation matrix determining the orientation of the {F2} CS
with respect to the {Fl} CS and FX K F1 is a 3x1 translation vector determining the position
of the origin of the {¥2} CS shifted with respect to the origin of the {Fl} CS.
The matrix F] T
can be divided into two submatrices:
rll F
rl\ F
r3U
r\2 F
r22 }
r32 f
r ^F\F2
r23 FlF2
r33 F1F2
,K F2 =
far
kyFiFi
T
(9b)
Due to its orthogonality, the rotation matrix R fulfills the condition R R = I , where I is a
3x3 identity matrix.
It is worth noticing that there are a great number (about 24) of conventions of determining
the rotation matrix R. We describe here two most common conventions, which are utilized
by leading robotproducing companies, i.e. the ZYXEulerangles and the unitquaternion
notations.
Euler angles notation The ZYX Euler angles representation can be described as follows.
Let us first assume that two CS, {Fl} and {F2}, coincide with each other. Then we rotate the
{F2} CS by an angle A around the Z F2 axis, then by an angle B around the Y F2 axis, and
finally by an angle C around the X F2 axis. The rotations refer to the rotation axes of the {F2}
CS instead of the fixed {Fl} CS. In other words, each rotation is carried out with respect to an
axis whose position depends on the previous rotation, as shown in Fig. 5.
>Y„
Fig. 5. Representation of the rotations in terms of the ZYX Euler angles
In order to find the rotation matrix Fl R F1 from the {Fl} CS to the {F2} CS, we introduce
indirect {F2} and {F2"} CSs. Taking the rotations as descriptions of these coordinate systems
(CSs), we write:
,R>
 R F2 R F2 J? 1
F1 i\ FT i\ F2 "^
In general, the rotations around the Z 9 Y 9 X axes are given as follows, respectively:
Vision Guided Robot Gripping Systems
51
R z =
cos(U) sin(^)
sin(^) cos(^4)
1
R,=
cos(B) sin(B)'
1
sin(#) cos(b)
R<
10
cos(c) sin(c)
sin(c) cos(c)
By multiplying these matrices we get a compose formula for the rotation matrix R^
cos(^4)cos(i?) cos(^)sin(i?)sin(c)sin(^)cos(c) cos(^)sin(i?)cos(c)+sin(^)sin(c)
sin(A)co^B) sin(^)sin(i?)sin(c)+cos(^)cos(c) sin(^)sin(i?)cos(c)cos(^)sin(c)
sin(#) cos( J g)sin(c) cos^co^C)
(10)
As the above formula implies, the rotation matrix is actually described by only 3 parameters,
i.e. the Euler angles A, B and C of each rotation, and not by 9 parameters, as suggested (9b).
Hence the transformation matrix T is described by 6 parameters overall, also referred to as a
frame.
Let us now describe the transformation between points in a threedimensional space, by
assuming that the {F2\ CS is moved by a vector K = [kx FlF2 kyFiFi kz FlF2 \ w.r.t. the {Fl}
CS in three dimensions and rotated by the angles A, B and C following the ZYX Euler angles
convention. Given a point ? F1 = \x F1 y F1 z F2 \, a point r Fl = [x Fl y Fl z Fl \ is
computed in the following way:
cos(^)cos(5) cos(^)sin(5)sin(c)sin(^)cos(c) cos(.4)sin(2?)cos(c)+ sin(^)sin(c) kx FlF2
sin(,4)cos(2?) sin(,4)sin(i?)sin(c) + cos(^)cos(c) sin(,4)sin(i?)cos(c) cos(^)sin(c) ky FlF2
sin(i?) 008(5)5111(0) 005(5)005(0) kz FlF2
1
[V 1 ]
y FX
z Fl
=
1
Using (9) we can also represent the above in a concise way:
Fl
X
y Fl
z Fl
=
1
rll
' L X F1F2
1 ^ L F\F2
r31
' J1 F1F2
rl2
' iZ FlF2
r22
' ^^F\F2
1 J> ^F\F2
rl3
' iJ F\F2
l ^J F\F2
r33
1 >> F\F2
kx FlF2
F2
X
F2
X
ky F\F2
y F1
= F J F2
y F1
^F\F2
z F1
Fl
z F1
1
1
1
After decomposing this transformation into rotation and translation matrices, we have:
V 1 "
y Fl
=
Fl
Z
rll.
rl2
rl3
F1F2 F1F2
r31 r32 r33
F1F2 F1F2
F1F2
V 2 "
F1F2
V 2 "
*F1F2
/ 2
+
^FlFl
~F\ K
/ 2
>F1F2_
F2
Z
_ ,VZ F1F2_
F2
Z
+«*"
(11)
(12)
(13)
There from, knowing the rotation R and the translation K from the first CS to the second CS
in the threedimensional space and having the coordinates of a point defined in the second
CS, we can compute its coordinates in the first CS.
52
Automation and Robotics
Unit quaternion notation Another notation for rotation, widely utilized in machine vision
industry and computer graphics, refers to unit quaternions. A quaternion,
p = (p Q ,p l ,p 2 ,p 3 ) = (p , p), is a collection of four components, first of which is taken as a
scalar and the other three form a vector. Such an entity can thus be treated in terms of
complex numbers what allows us to rewrite it in the following form:
p = p +ip l +jp 2 +kp 3
where i, j, k are imaginary numbers. This means that a real number (scalar) can be
represented by a purely real quaternion and a threedimensional vector by a purely
imaginary quaternion. The conjugate and the magnitude of a quaternion can be determined
in a way similar to the complex numbers calculus:
P* =P i'PiJ'P 2  k 'P3 ' IHhV^o 2 +A 2 +^2 2 +^3 2
With another quaternion q = (q ,q l ,q 2 ,q 3 ) = (q ,q) in use, the sum of them is
p + q = (p +q ,p + q)
and their (noncommutative) product can be defined as
pq = (poVo  pq> p<A + q p + pq)
The latter can also be written in a matrix form as
pq
Po ~Pi ~Pi Pi
Px Po P* Pi
Pi Pi Po Px
P3 ~Pi Pi Po
or
■q = Pq
qp =
Po ~Px ~Pi ~Ps
Px Po Pz 'Pi
Pi Pz Po Px
P3 Pi 'Px Po
q = Pq
where P and P are 4x4 orthogonal matrices.
Dot product of two quaternions is the sum of products of corresponding elements:
P ° q = PoVo + P& + Pi<li + Pili
A unit quaternion Ml = 1 has its inverse equal its conjugate:
P =
1
pop
P =P
as the square of the magnitude of a quaternion is a dot product of the quaternion with itself:
Vision Guided Robot Gripping Systems
53
\\P\\ = P°P
It is clear that the vector's length and angles relative to the coordinate axes remain constant
after rotation. Hence rotation also preserves dot products. Therefore it is possible to
represent the rotation in terms of quaternions. However, simple multiplication of a vector
by a quaternion would yield a quaternion with a real part (vectors are quaternions with
imaginary parts only). Namely, if we express a vector q from a threedimensional space as
a unit quaternion q = (0, q) and perform the operation with another unit quaternion p
q'=pq = (q \q l \q 2 \q 3 ')
then we attain a quaternion which is not a vector. Thus we use composite product in order
to rotate a vector into another one while preserving its length and angles:
q'=pqp 1 =p.q.p* ={0,q x \q 2 \q 3 y )
We can prove this by the following expansion:
p q ■ p = (Pq)p' = P T {Pq) = {P T P)q
where
P T P =
pop (J
\PI + Pi  P\  P\ ) 2(^1^2 " PoPl ) 2 (PlP3  PoPl )
2( Pl p 2 p p 3 ) [pIpI+pIp]) 2(p 2 p 3 p oPl )
2 (p3PipoPi) 2 (p3PipoPi) [plplpl+pl,
Therefore, if q is purely imaginary then q is purely imaginary, as well. Moreover, if p is a
unit quaternion, then p o p = 1 , and P and P are orthonormal. Consequently, the 3x3 lower
righthand submatrix is also orthonormal and represents the rotation matrix as in (9b).
The quaternion notation is closely related to the axisangle representation of the rotation
matrix. A rotation by an angle 6 about a unit vector co^o x co co z \ can be
determined in terms of a unit quaternion as:
p = cos — + sin — \ico x + jco + kco z )
e_
'2
In other words, the imaginary part of the quaternion represents the vector of rotation and
the real part along with the magnitude of the imaginary part provides the angle of rotation.
There are several important advantages of unit quaternions over other conventions. Firstly,
it is much simpler to enforce the constraint on the quaternion to have a unit magnitude than
to implement the orthogonality of the rotation matrix based on Euler angles. Secondly,
quaternions avoid the gimbal lock phenomenon occurring when the pitch angle is 90° . Then
yaw and roll angles refer to the same motion what results in losing one degree of freedom.
We postpone this issue until Section 3.3.
Finally, let us study the following example. In Fig. 6 there are four CSs: {A}, {B}, {Q and {D}.
Assuming that the transformations A T , B T and A T are known, we want to find the
54
Automation and Robotics
other two, A T (
1 and D T C . Note that there are 5 loops altogether, ABCD, ABC, ACD, ABD
and BCD, that connect the origins of all CSs. Thus there are several ways to find the
unknown transformations. We find A T by means of the loop ABC, and D T by following
the loop ABCD. Writing the matrix equation for the first loop we immediately obtain:
'A 1 B 1
Writing the equation for the other loop we have:
A T%T C = A T D D T C ^ D T C =( A T D Y A T B B T C
To conclude, given that the transformations can be placed in a closed loop and only one of
them is unknown, we can compute the latter transformation based on the known ones. This
is a principal property of transformations in visionguided robot positioning applications.
Fig. 6. Transformations based on closed loops
2.3 Pose estimation  problem statement
There are many methods in the machine vision literature suitable for retrieving the
information from a threedimensional scene with the use of a single image or multiple
images. Most common cases include single and stereo imaging, though recently developed
applications in robotic guidance use 4 or even more images at a time. In this Section we
characterize few methods of pose estimation to give the general idea of how they can be
utilized in robot positioning systems.
Why do we compute the pose of the object relative to the camera? Let us suppose that we
have a robotcameragripper positioning system, which has already been calibrated. In robot
positioning applications the vision sensor acts somewhat as a medium only. It determines
the pose of the object that is then transformed to the Gripper CS. This means that the pose of
the object is estimated with respect to the gripper and the robot 'knows' how to grip the
object.
Vision Guided Robot Gripping Systems 55
In another approach we do not compute the pose of the object relative to the camera and
then to the gripper. Single or multi camera systems calculate the coordinates of points at the
calibration stage, and then perform the calculation at each position while the system is
running. Based on the computed coordinates, a geometrical motion of a given camera from
the calibrated position to its actual position is processed. Knowing this motion and the
geometrical relation between the camera and the gripper, the gripping motion can then be
computed so that the robot 'learns' where its gripper is located w.r.t to the object, and then
the gripping motion can follow.
2.3.1 Computing 3D points using stereovision
When a point in a 3D scene is projected onto a 2D image plane, the depth information is lost.
The simplest method to render this information is stereovision. The 3D coordinates of any
point can be computed provided that this point is visible in two images (1 and 2) and the
intern camera parameters together with the geometrical relation between stereo cameras are
known.
Rendering 3D point coordinates based on image data is called inverse point mapping. It is a
very important issue in machine vision because it allows us to compute the camera motion
from one position to another. We shall now derive a mathematical formula for rendering the
3D point coordinates using stereovision.
Let us denote the 3D point r in the Camera 1 CS as f cl = [x cl y cl z cl if  The same
point in the Camera 2 CS will be represented by f C1 = \x C2 y cl z cl if • Moreover, let
the geometrical relation between these two cameras be given as the transformation from
Camera 1 to Camera 2 cl T C2 =[ cl R C2 , cl K C2 ), their calibration matrices be Mci and Mci, and
the projected image points be f n = \x n y 11 1 1 and f 12 = \ x 12 y 12 l] T , respectively.
There is no direct way to transform distorted image coordinates into undistorted ones
because (3) and (4) are not linear. Hence, the first step would be to solve these equations
iteratively. For the sake of simplicity, however, let us assume that our camera model is free
of distortion. In Section 5 we will verify how these parameters affect the precision of
measurements. In the considered case, the normalized distorted coordinates match the
normalized undistorted ones: x, = x and v = v .As the stereo images are related
d norm J d J norm °
with each other through the transformation cl T C2 , the pixel coordinates of Image 2 can be
transformed to the plane of Image 1. Thus combining (8) and (13), and eliminating the
coordinates x and y yields:
M1/1 C\ r>C2 nsl *I2 C2 , V C2 ,„ ..
Cl r z  cl R M C2 r z + CX K (14)
This overconstrained system is solved by the linear least squares method (LS) and
computation of the remaining coordinates in {CI} and {C2} comes straightforward. Such an
approach based on (14) is called triangulation.
It is worth mentioning that the stereo camera configuration has several interesting
geometrical properties, which can be used, for instance, to inform the operator that the
system needs recalibration and/ or to simplify the implementation of the image processing
application (IP A) used to retrieve object features from the images. Namely, the only
constraint of the stereovision systems is imposed by their epipolar geometry. An epipolar
plane and an epipolar line represent epipolar geometry. The epipolar plane is defined by a
56
Automation and Robotics
3D point in the scene and the origins of the two Camera CSs. On the basis of the projection
of this point onto the first image, it is possible to derive the equation of the epipolar plane
(characterized by a fundamental matrix) which has also to be satisfied by the projection of this
point onto the second image plane. If such a plane equation condition is not satisfied, then
an error offset can be estimated. When, for instance, the frequency of the appearance of such
errors exceeds an a priori defined threshold, it can be treated as a warning sign of the
necessity for recalibration. The epipolar line is also quite useful. It is the straight line of
intersection of the epipolar plane with the image plane. Consequently, a 3D point projected
onto one image generates a line in the other image on which its corresponding projection
point must lie. This feature is extremely important when creating an IPA. Having found one
feature in the image reduces the scope of the search for its corresponding projection in the
other image from a region to a line. Since the main problem of stereovision IPAs lies in
locating the corresponding image features (which are projections of the same 3D point), this
greatly improves the efficiency of IPAs and yet eases the process of creating them.
Epipolar line
Fig. 7. Stereoimage configuration with epipolar geometry
2.3.2 Single image pose estimation
There are two methods of pose estimation utilized in 3D robot positioning applications. A
first one, designated as 3D3D estimation, refers to computing the actual pose of the camera
either w.r.t. the camera at the calibrated position or w.r.t. the actual position of the object. In
the first case, the 3D point coordinates have to be known in both camera positions. In the
latter, the points have to be known in the Camera CS as well as in the Object CS. Points
defined in the Object CS can be taken from its CAD model (therefore called model points).
The second type of pose estimation is called 2D3D estimation and is used only by the
gripping systems equipped with a single camera. It consists in computing the pose of the
object with respect to the actual position of the camera given the 3D model points and their
projected pixel coordinates. The main advantage of this approach over the first one is that it
does not need to calculate the 3D points in the Camera CS to find the pose. Its disadvantage
lies in only iterative implementations of the computations. Nevertheless, it is widely utilized
in camera calibration procedures.
Vision Guided Robot Gripping Systems 57
The assessment of camera motions or else the poses of the camera at the actual position
relative to the pose of the camera at the calibration position are also known as relative
orientation. The estimation of the transformation between the camera and the object is
identified as exterior orientation.
Relative orientation
Let us consider the following situation. During the calibration process we have positioned
the cameras, measured n 3D object points (n > 3) in a chosen Camera CS {Y}, and taught the
robot how to grip the object from that particular camera position. We could measure the
points using, for instance, stereovision, linear npoint algorithms, or structurefrommotion
algorithms. Let us denote these points as r Y ,..., r Y ■ Now, we move the camerarobot system
to another (actual) position in order to get another measurement of the same points (in the
Camera CS {X}). This time they have different coordinates as the Camera CS has been
moved. We denote these points as r x ,...,r x , where for an z'th point we have: r Y <f» r x ,
meaning that the points correspond to each other. From Section 2.2 we know that there
exists a mapping which transforms points r to points r . Note that this transformation
implies the rigid motion of the camera from the calibrated position to the actual position. As
will be shown in Section 3.2, knowing it, the robot is able to grip the object from the actual
position. We can also consider these pairs of points as defined in the Object CS (r { x ,...,r x )
and in the Camera CS (r Y 9 ... 9 rJ ). In such a case the mapping between these points
describes the relation between the Object and the Camera CSs. Therefore, in general, given
the points in these two CSs, we can infer the transformation between them from the
following equation:
J\L n ] = 7[4x4]^L]
After rearranging and adding noise rj to the measurements, we obtain:
r Y =R? X +K + ^ n
One of the ways of solving the above equation consists in setting up a least squares equation
and minimizing it, taking into account the constraint of orthogonality of the rotation matrix.
For example, Haralick et al. (1989) describe iterative and noniterative solutions to this
problem. Another method, developed by Weinstein (1998), minimizes the summedsquared
distance between three pairs of corresponding points. He derives an analytic least squares
fitting method for computing the transformation between these points. Horn (1987)
approaches this problem using unit quaternions and giving a closedform solution for any
number of corresponding points.
Exterior orientation
The problem of determining the pose of an object relative to the camera based on a single
image has found many relevant applications in machine vision for object gripping, camera
calibration, handeye calibration, cartography, etc. It can be easily stated more formally:
given a set of (model) points that are described in the Object CS, the projections of these
points onto an image plane, and the intern camera parameters, determine the rotation R
and translation K between the object centered and the camera centered coordinate system.
As has been mentioned, this problem is labeled as the exterior orientation problem (in the
photogrammetry literature, for instance). The dissertation by Szczepanski (1958) surveys
58 Automation and Robotics
nearly 80 different solutions beginning with the one given by Schrieber of Karlsruhe in the
year 1879. A first robust solution, identified a RANSAC paradigm, has been delivered by
Fischler and Bolles (1981), while Wrobel (1992) and Thomson (1966) discuss configurations
of points for which the solution is unstable. Haralick et al. (1989) introduced three iterative
algorithms, which simultaneously compute both object pose w.r.t. the camera and the
depths values of the points observed by the camera. A subsequent method represents
rotation using Euler angles, where the equations are linearized by a Newton's firstorder
approximation. Yet another approach solves linearized equations using Mestimators.
It has to be emphasized that there exist more algorithms for solving the 2D3D estimation
problem. Some of them are based on minimizing the error functions derived from the
collinearity condition of both the objectspace and the imagespace error vector. Certain
papers (Schweighofer & Pinz, 2006; Lu et al., 1998; Phong et al., 1995) provide us with the
derivation of these functions and propose iterative algorithms for solving them.
3. 3D robot positioning system
The calibrated vision guided threedimensional robot positioning system, able to adjust the
robot to grip the object deviated in 6DOF, comprises the following three consecutive
fundamental steps:
1. Identification of object features in single or multi images using a custom image
processing application (IP A).
2. Estimation of the relative or exterior orientation of the camera.
3. Computation of the transformation determining the gripping motion.
The calibration of the vision guided gripping systems involves three steps, as well. In the
first stage the image processing software is taught some specific features of the object in
order to detect them at other object/ robot positions later on. The second step performs
derivation of the camera matrix and handeye transformations through calibration relating
the camera with the flange (endeffector) of the robot. This is a crucial stage, because though
the camera can estimate algorithmically the actual pose of the object relative to itself, the
object's pose has to be transformed to the gripper (also calibrated against the endeffector) in
order to adjust the robot gripper to the object. This adjustment means a motion of the
gripper from the position where the object features are determined in the images to the
position where the object is gripped. The robot knows how to move its gripper along the
motion trajectory because it is calibrated beforehand, what constitutes the third step.
3.1 Coordinate systems
In order do derive the transformations relating each component of the positioning system it
is necessary to fix definite coordinate systems to these components. The robot positioning
system (Kowalczuk & Wesierski, 2007) presented in this chapter is guided by stereovision
and consists of the following coordinate systems (CS):
1
2,
3.
4
5.
6
7
Robot CS, {R}
Flange CS, {F}
Gripper CS, {G}
Camera 1 CS, {CI}
Camera 2 CS, {C2}
Sensor 1 CS of Camera 1, {SI}
Sensor 2 CS of Camera 2, {S2}
Image 1 CS of Camera 1, {11}
Vision Guided Robot Gripping Systems
59
9. Image 2 CS of Camera 2, {12}
10. Object CS, {W}.
The above CSs, except for the Sensor and Image CSs (discussed in Section 2.1), are three
dimensional Cartesian CSs translated and rotated with respect to each other, as depicted in
Fig. 8. The Robot CS has its origin in the root of the robot. The Flange CS is placed in the
middle of the robotic endeffector. The Gripper CS is located on the gripper within its origin,
called Tool Center Point (TCP), defined during the calibration process. The center of the
Camera CS is placed in the camera projection center Oc As has been shown in Fig.l, the
Camera principal axis determines the Z c axis of the Camera CS pointing out of the camera
in positive direction, the Y c axis pointing downward and the X axis pointing to the left as
one looks from the front. Apart from the intern parameters, the camera has extern
parameters as well. They are the translation vector K and the three Euler angles A, B, C. The
extern parameters describe translation and rotation of the camera with respect to any CS,
and, in Fig. 8, with respect to the Flange CS, thus forming the handeye transformation. The
Object CS has its origin at an arbitrary point/ feature defined on the object. The other points
determine the object's axes and orientation.
Fig. 8. Coordinate systems of the robot positioning system
3.2 Realization of gripping
In Section 2.3.2 we have shortly described two methods for gripping the object. We refer to
them as the exterior and the relative orientation methods. In this section we explain how
these methods are utilized in vision guided robot positioning systems and derive certain
mathematical equations of concatenated transformations.
In order to grip an object at any position the robot has to be first taught the gripping motion
from a position at which it can identify object features. This motion embraces three positions
and two partial motions, first, a pointtopoint movement (PTP), and then a linear
60 Automation and Robotics
movement (LIN). The pointtopoint movement means a possibly quickest way of moving
the tip of the tool (TCP) from a current position to a programmed end position. In the case of
linear motion, the robot always follows the programmed straight line from one point to
another.
The robot is jogged to the first position in such a way that it can determine at least 3 features
of the object in two image planes {11} and {12}. This position is called Position 1 or a 'Look
Position. Then, the robot is jogged to the second position called a 'BeforeGrippingPosition',
denoted as Gb. Finally, it is moved to the third position called an 'AfterGrippingPosition',
symbolized by Ga, meaning that the gripper has gripped the object. Although the motion
from the 'LookPosition' to the Gb is programmed with a PTP command, the motion from Gb
to Ga has to be programmed with a LIN command because the robot follows then the
programmed linear path avoiding possible collisions. After saving all these three calibrated
positions, the robot 'knows 7 that moving the gripper from the calibrated 'LookPosition' to Ga
means gripping the object (assuming that the object is static during this gripping motion).
For the sake of conceptual clarity let us assume that the positioning system has been fully
calibrated and the following data are known:
c\
ci
transformation from the Flange to the Camera 1 CS: F T
transformation from the Flange to the Camera 2 CS: F T
transformation from the Flange to the Gripper CS: F T G
transformation from the Gripper CS at Position 1 {'LookPosition') to the 'BeforeGripping
Position': ^T
Gb
Ga
transformation from the 'BeforeGrippingPosition' to the 'AfterGrippingPosition': Gb T c
the pixel coordinates of the object features in stereo images when the system is
positioned at the 'LookPosition'.
Having calibrated the whole system allows us to compute the transformation from the
Camera 1 to the Gripper CS cl T G and from the Camera 1 to the Camera 2 CS. We find the
first transformation using the equation below:
c\
To find the latter transformation, we write:
T G =( F T cl Y P T c
,T C2 ={ F T a Y F T C
Based on the transformation CI T C2 and on the pixel coordinates of the projected points, the
system uses the triangulation method to calculate the 3D points in the Camera 1 CS at
Position 1.
We propose now two methods to grip the object, assuming that the robot has changed its
position from Position 1 to Position N, as depicted in Fig. 9.
Exterior orientation method for robot positioning This method is based on computing the
transformation T w from the camera to the object using the 3D model points determined in
the Object CS {Wl} and the pixel coordinates of these points projected onto the image. The
exterior orientation methods described in Section 2.3.2 are used to obtain cl T w .
Vision Guided Robot Gripping Systems
61
The movement of the positioning system, shown in Fig. 9, from Position 1 to an arbitrary
Position N can be presented in three ways:
• the system changes its position relative to a constant object position
• the object changes its position w.r.t. a constant position of the system
• the system and the object both change their positions.
Note that, as the motion of the gripper between the Gb to the Ga Positions is programmed by
a LIN command, the transformation ^T Ga remains constant.
Lrb
Regardless of the current presentation, the two transformations cl T w and G T Gb change into
T w and f Gb , respectively, and they have to be calculated. Having computed f w by
using exterior orientation algorithms, we write a loop equation for the concatenating
transformations at Position N:
c r=cr G T Gb { GP T Gb )Xry clP T w
Position 1calibrated position
(hookPosition)
Position N  actual position
(LookPosition)
Fig. 9. Gripping the object
62 Automation and Robotics
After rearranging, a new transformation from the Gripper CS at Position N to the Gripper
CS at Position Gb can be shown as:
Gp T Gt = ( c rT CIp t w ir Y c r j 6b w
Relative orientation method for robot positioning After measuring at least three 3D points
in the Camera 1 CS at Position 1 and at Position N, we can calculate the transformation
cl T clp between these two positions of the camera (confer Fig. 9), using the methods
mentioned in Section 2.3.2. A straightforward approach is to use 4 points to derive cl T clp
analytically. It is possible to do so based on only 3 points (which cannot be collinear) since
the fourth one can be taken from the (vector) cross product of two vectors representing the 3
points hooked at one of the primary points. Though we sacrifice here the orthogonality
constraint of the rotation matrix.
We write the following loop equation relating the camera motion, constant cameragripper
transformation, and the gripping motions:
rpG rpGb rpCXp rpG rpGb
CI 1 G 1 ~C\ 1 CI 1 Gp 1
And after a useful rearrangement,
Gp T Gb = ( CI T G Y ( cl T cl » y CX T G G T Gb (15b)
The new transformation G T Gb determines a new PTP movement at Position N from Gp to
Gb, while a final gripping motion LIN is determined from the constant transformation
Gb T . Consequently, equations (15a) and (15b) determine the sought motion trajectory
which the robot has to follow in order to grip the object.
Furthermore, the transformations described by (15a, b) can be used to position the gripper
while the object is being tracked. In order to predict the 3D image coordinates of at least
three features one or two sampling steps ahead, a tracking algorithm can be implemented.
With the use of such a tracking computation and based on the predicted points, the
transformations CI T W or cl T clp can be developed and substituted directly into equations
(15a, b) so that the gripper could adjust its position relative to the object in the next sampling
step.
3.3 Singularities
In systems using the Euler angles representation of orientation the movement G T Gb has to
be programmed in a robot encoder using the frame representation of the transformation
G T Gb . The last column of the transformation matrix is the translation vector, directly
indicating the first three parameters of the frame (X, Y and Z). The last three parameters A, B
and C have to be computed based on the rotation matrix of the transformation. Let us
assume that the rotation matrix has the form of (10). First, the angle B is computed in
radians as
B l =7u + arcsin(r3 1) v B 2 =  arcsin(r3 1) (16a)
Vision Guided Robot Gripping Systems 63
Then, the angles A and C, based on the angle B, can be computed from the following recipes:
A = a tan 2
^■^ v ^H^v^N (16b)
cos(5j cos^JJ lcos(£ 2 ) cos(£ 2 )J
C,=.tan2^*U v c 7 =ata„ 2 (^,^ (16c)
cos^J'cos^jJ ' ^cos(5 2 )'cos(5 2 )
The above solutions results from solving the sine/ cosine equations of the rotation matrix in
(10). As the sine/ cosine function is a multivalue function over the interval \—k,+7z), the
equations (16a16c) have two sets of solutions: {Ay By C\) and {Az B% C2}. These two sets
give the very same transformation matrix when substituted into (9b). Another common
method of rendering these angles from the rotation matrix represents the Nonlinear Least
Squares Fitting algorithm. Although its accuracy is higher than that of the technique (16a
16c), applying the NLSF algorithm to the positioning system guided by stereovision
obviously deprives the system of its fully analytical development.
As (16a16c) imply, the singularity of the system occurs in the case when the pitch angle
equals ±90 deg, that is r31 equals ±1, since it results in zero values of the denominators. This
case is called a gimbal lock and is a wellknown problem in aerospace navigation systems.
That is also why unit quaternions notation is preferred against the Euler angles notation.
Another singularity refers to the configuration of object features. Considering the relative
orientation algorithms, the transformation between camera positions can only be computed
under the condition that at least three not collinear object features are found (as has been
discussed above the points have to span a plane in order to render the orientation). The
exterior orientation algorithms have drawbacks, as well. Namely, there exist certain critical
configurations of points for which the solution is unstable, as already mentioned in Section
2.3.2.
4. Calibration of the system  outline of the algorithms
There are many calibration methods able to find the transformation from the flange of the
robot (hand) to the camera (eye). This calibration is called a handeye calibration. We
demonstrate a classical approach initially introduced by Tsai & Lenz (1989). It states that
when the camera undergoes a motion from Position i to Position z+1, described by the
transformation Ci T Cl+l = l a R Cl+l , a K Cl+1 J, and the corresponding flange motion is
F f FM = [ Fi R Fi+1 , Fi K Fi j, then they are coupled by the following handeye transformation
pT =l F R c , F K C ), depicted in Fig. 10. This approach yields the subsequent equation:
F f M F r= F ^ c f M (17)
where c f Cl+l is estimated from the images of the calibration rig using the MCT software, for
instance, F f Fl+l is known with the robot precision from the robot encoder, and F T C is the
unknown. This equation is also known as the Sylvester equation in systems theory. Since
each transformation can be split into rotation and translation matrices, we easily land at
Fi R FM F R c = F R c a R CM (18a)
64
Automation and Robotics
T>Fi+\ t^C . yFh1 r>C r^Ci+l . t\C
(18b)
Tsai and Lenz proposed a twostep method to solve the problem resented by (18a) and
(18b). At first, they solve (18a) by leastsquare minimization of a linear system, obtained by
using the axisangle representation of the rotation matrix. Then, once F R C is known, the
solution for (18b) follows using the linear least squares method.
Calibration Rig
[Ch]
Position i
Position i+1
Fig. 10. HandEye Calibration
In order to obtain a unique solution, there have to be at least two motions of the flange
camera system giving accordingly two pairs [ F iT F2 , cl T C2 \[ F2 T F3 , C2 T C3 j. Unfortunately,
noise is inevitable in the measurementbased transformations Fi T Fi+l and a T a+l . Hence it is
useful to make more measurements and form a number of the transformations pairs
{(F 1 r F2 ,c 1 r C2 )( F2 r F3 , C2 r C3 )...,( fi r F ' +1 , c ,r a+1 )...,U_ 1 r rt , c ,_ 1 r a )}, and, consequently, to find
a transformation F T C that minimizes an error criterion:
s = T J d( Fi+l T Fi c T'
{r a )
where d{,) stands for some distance metric on the Euclidean group. With the use of the Lie
algebra the above minimization problem can be recast into a least squares fitting problem
Vision Guided Robot Gripping Systems
65
that admits an explicit solution. Specifically, given vectors Xi,...,Xk, yi,...,yk in a Euclidean n
space, there exist explicit expressions for the orthogonal matrix R and translation K that
minimize:
k 2
8 = YARx t +Ky i \\
i=V
k
The best values of R and K turn out to depend on only the matrix m = V x .y T / while the
i=\
rotation matrix R is then given by the following formula:
r = (m t mY /2 m t
Thus F R C =(m t M) M t represents in that case the computed rotation matrix of the
handeye transformation F T C . After straightforward matrix operations on (18b), we acquire
the following matrix equation for the translation vector F K C :
K F2 l]
K"I
= F K C
,K Fk I_
R c r] K C2 
cx 1
C2 1
Ckl
K L
.,*'
Using the leastsquares method we obtain the solution f or F K .
Although simple to implement, the idea has a disadvantage as it solves (17) in two steps.
Namely, the rotation matrix derived from (18a) propagates errors onto the translation vector
derived from (18b). In the literature there is a large collection of handeye calibration
methods, which have proved to be more accurate than the one discussed here. For instance,
Daniilidis (1998) solves equation (17) simultaneously using dual quaternions. Andreff et al.
(2001) uses the structurefrommotion algorithm to find the camera motion a T a+1 based on
unknown scene parameters, and not by finding the transformations a T ch relating the scene
(the calibration rig, here) with the camera. This is an interesting approach as it allows for a
fully automatic calibration and thus reduces human supervision.
4.1 Manual handeye calibration  an evolutionary approach
After having derived the handeye transformations for both cameras (using MCT and Tsai
method, for instance), it is essential to test their measurement accuracy. Based on images of
a checkerboard, the MCT computed the transformation T ch for each robot position with
the estimation errors of ±2 mm. This has proved to be too large, as the point measurements
resulted then in the repeatability error of even ±6 mm, which was unacceptable. Therefore,
a genetic algorithm (GA) was utilized to correct the handeye parameters of both cameras,
as they have a major influence on the entire accuracy of the system. We aimed to obtain the
repeatability error of ±1 mm for each coordinate of all 3D points when compared to the
points measured at the first vantage point.
Correcting the values of the handeye frames involves the following calibration steps:
jogging the camerarobot system to K positions and saving pixel coordinates of N features
seen in stereo images. Assuming that the accuracy of K measurements of N points
66 Automation and Robotics
(P ll9 ...,P Nl ,...,P lK ,...,P NK ) depends only on the handeye parameters (actually it depends
also on the robot accuracy), the estimated values of both frames have to be modified by
some yet unknown corrections:
[kx FCl + Akx FCl , ky FCl + Aky FCl , kz FCl + Akz FCl , A FCl + AA FCl •> Bfc\ + ^fc\ •> ^fc\ + ^fc\ )
and
\kxpc2 + AkxFCl ' kyFCi + AkyFCl ' k z FC2 + Akz FC2 , A FC2 + AA FC2 , B FC2 + AB FC2 , C FC2 + AC FC2 ) •
The corrections, indicated here by A , have to be found based on a certain criterion. Thus, a
sum of all repeatability errors /(A) of each coordinate of N=3 points has been chosen as a
criterion to be minimized. The robot was jogged to K=10 positions. It is clear that the smaller
the sum of the errors, the better the repeatability. Consequently, we seek for such
corrections, which minimize the following function of the error sum:
s = /(A)=Xf>„,(A)P„,(A), ^ = 3,^ = 10 (19)
n=\ k=2
As genetic algorithms effectively maximize the criterion function, while we wish to
minimize (19), we transform it to:
g(A)=C/(A)
The fitness function g(A) can then be maximized, with C being a constant scale factor
ensuring that g(A) > ,
min /(A) = max g(A) = max{ /(a)}
The function g(A) has 12 variables (6 corrections for each frame). Let us
assume that the corrections for both translation vectors
dK = \Akx FCl , Aky FCl , Akz FCl , Akx FC2 , Aky FC2 , Akz FC2 } are within a searched interval
D dK =[k l ,k 2 ]^R and the corrections for the Euler angles of both frames
dR = {AA FCl ,AB FCl ,AC FCl ,AA FC 2,AB FC2 ,AC FC2 } are within the interval
D dR = [?i,r 2 ]cz R , where A = {dK,dR} and v V g(A)>0 Our desire is to
dKeD dK dReD dR
maximize g(A) with a certain precision for dK and dR , say 10 w and 10 _m , respectively.
It means that we have to divide D dK and D dR into (k 2 k{)\Q n and (r 2 r 1 )10 w equal
intervals, respectively. Denoting a and b as the least numbers satisfying (k 2 y^lO" <2 a
and (r 2  r x ) • 10™ < 2 b implies that when the values dK i9 i = 1,...,6 and dR t ,i = 1,...,6 are coded
as binary chains (ch\. , / = 1,...,6 and \ch) , j = 1,...,6 of length a and fr, respectively, then
the binary representation of these values will satisfy the precision constraints. The decimal
value of such binary chains can then be expressed as
decimal \{ch\. \(k 7 k,) decimal ]ich ) J (r 2  r x ) / ?m
dK, =k,+ LV ' ,hin J v 2 — and dR, = k + LV J [ bin J — — \ Z{J )
Vision Guided Robot Gripping Systems 67
Putting binary representations of the corrections dK t ,i = l,...,6 and dR t ,i = l,...,6 into one
binary chain leads to a chromosome:
v = jc/j; , chj j, i, j = 1,. . . ,6
A reasonable number of chromosomes, forming a population, have to be defined to
guarantee the effectiveness of a GA. The population is initiated completely randomly, i.e. bit
by bit for each chromosome. In each generation we evaluate all chromosomes by first
separating the chains ch t and ch., then computing their decimal values using (20), and
finally substituting the final results into g(A). The error function producing a sum of
measurement errors for each chromosome, is used to compute the suitability of each
chromosome in terms of the fitness function (in effect, by minimizing the repeatability error
both frames are optimized). After evaluation, we select a new population according to the
probability distribution based on suitability of each chromosome and with the use of
recombination and mutation.
The most challenging part of creating a GA lies in determining the fitness function. Suitable
selection, recombination and mutation processes are also very important as they form the
GA structure and affect convergence to the right results. In spite of a wealth of GA
modifications (Kowalczuk & Bialaszewski, 2006), we have implemented classical forms of
the procedures of selection, recombination, and mutation (Michalewicz, 1996). Additionally,
in order to increase the effectiveness of convergence, though, we did not recombine the five
best chromosomes at each selection step (elitism).
After these steps the new population is ready for another evaluation, which is used to
determine the distribution of the probability for new selection. The algorithm terminates
when the number of generations reaches a certain/ given epoch (number). Then the final,
sought result is represented by one chromosome characterized by a minimal value of /(A) .
The chromosome is then divided into 12 binary chains, which are transformed into their
decimal values. They represent the computed phenotype, or the optimized corrections,
which are then added to the handeye frames.
Technical values of the parameters of the genetic algorithm have been as follows:
• generation epoch (number of populations): 300
• population of chromosomes: 40
• recombination probability: 0.5
• mutation probability: 0.05
• precision of corrections: 10~ 4
• interval for corrections of the translation vectors: [5, +5] mm
• interval for corrections of the Euler angles: [0.5, +0.5] deg.
Our genetic algorithm might not converge to the desired error bounds of ±1 mm in the first
trial. If this is the case, one has to run the algorithm few times with changed or unchanged
parameters.
4.2 Automated calibration
Apart from the pose calibration methods (like the one of Tsai and Lenz), there are also
structurefrommotion algorithms that can be applied to calibrate the system without any
68 Automation and Robotics
calibration rig (self handeye calibration). Andreff et al. (2001) have developed one of such
effective calibration methods. They allow for a mobile autonomic robot or robot space
applications equipped with vision sensors to recalibrate themselves based on only the actual
surrounding scene. By performing programmed movements and using 2D image matching
algorithms, the translation vector between the origins of the moving Camera CSs can be
estimated and used as a further input to the main algorithm. One of such image matching
techniques, based on an adaptive least squares correlation, has been proposed by Gruen
(1985).
A fully automatic handeye calibration algorithm is a great challenge (with or without a
calibration rig) because it would certainly simplify and speed up the calibration process. The
time factor is of high importance because it happens quite often that the robotic systems
with vision guidance have to be recalibrated. The handeye relations change easily during
the assembly process due to vibrations during a permanent gripping process. The
measurement accuracy does then decrease and the assembly line needs to be stopped
(declining efficiency). The faster the system is recalibrated, the sooner the assembly line
resumes its work.
5. Experimental results
The experimental system consisted of the following hardware and optical components:
• Kuka robot with 6DOF, model KR 603
• Siemens camera, model SIMATIC VS723, resolution of 640x480 pixels
• Cognex camera, model InSight 1100, resolution of 640x480 pixels
• Fujinon TV lens, focal length of 16 mm
• Pentax TV lens, focal length of 16 mm
In this research a KUKA robot was utilized which is a sixaxis robot with a maximum
payload of 60 kg at a maximum range of 2429 mm and a repeatability of ±0.25 mm.
We calibrated the entire stereo system using the classical Tsai and Lenz method and
corrected the handeye parameters (translation plus rotation based on the Euler angles) with
the GA algorithm. We then performed three tests to verify the system's ability to compute
the object's pose with repeatable results w.r.t. the static Robot CS based on measured 3
object features. The verification procedure was performed as follows. The robotstereo
system was calibrated for 3 baselines (Baseline 1 was 450 mm, Baseline 2 was 330 mm, and
Baseline 3 was 220 mm) and for each one the object was placed at 3 object positions (OPs).
The robot was jogged to 10 vantage points (VPs) for each OP. The Euler angles were
computed using the NLSF algorithm. As our aim was to create the positioning system with
the pose repeatability error of ±1 mm and ±1 deg, the GA was run three times for each
camera baseline until it obtained satisfactory results. Each time the computation took about
5 min. The values of the GA parameters listed in Section 4.1 were applied.
Furthermore, we analyzed the influence of the distortion parameters on the system's
performance. Three types of verification were used for each baseline. A first method verified
the performance of the system with the distortion parameters and with the corrected hand
eye frames of both cameras, a second approach was without the distortion parameters and
with the handeye corrections, while a third verification was without handeye corrections
and with the distortion parameters.
As depicted in Fig. 11 after adding the corrections (computed by the GA) to the handeye
parameters the repeatability error was significantly diminished. Satisfactory results were
Vision Guided Robot Gripping Systems
69
obtained with and without the distortion parameters. Although distortions seemed not to
influence the accuracy for the lens focal length of 16 mm, the authors suggest that they
should be included in the camera model when the camera is equipped with lenses of shorter
focal lengths.
The figures show that the measuring accuracy of the system without the corrected handeye
parameters is unsatisfactory for Baselines 1 and 3. The desired accuracy was achieved for
Baseline 2, though here the cameracheckerboard transformations computed by MCT had
very small errors as compared to those obtained for the other two baselines. Yet, the system
with Baseline 2 had the best accuracy because the distances from the Camera 1 to the Object
CS were relatively smaller in this configuration. Fig. 12 shows the distances between these
two CSs varying from 250 mm to 600 mm, while we set the focus of the cameras at the
distance of 400 mm. Although images were blurred at minimal and maximal distances, such
deviations proved to be acceptable. Not surprisingly, Baseline 3, the shortest one, produced
the worst accuracy.
70 80 VP
70
Automation and Robotics
error
l [deg] Baseline 1
30 40 50 60 70 60 VP
Fig. 11. Repeatability error of the kx, ky, kz coordinates and the A, B, C angles for Baselines
1, 2, 3 : square  with the distortion coefficients and with handeye corrections; circle 
without the distortion coefficients and with the handeye corrections; triangle  with the
distortion coefficients and without the handeye corrections
The proposed manual calibration of the stereovision system satisfied the criterions of
repeatability of measurements. Although there are some errors shown in Fig. 11 that exceed
the desired accuracy, it has to be noticed that some pictures were taken at very acute angles.
In overall, the camera's yaw angle varied between 50 and +100 deg and the pitch angle
varied between 60 and +40 deg throughout the whole test, what far exceeds the real
working conditions. Moreover, the image data were collected for GA only at the first OP for
each baseline (marked as blue rectangles in the figures) and they were very noisy in several
cases. We suppose that noise must have decreased the GA's efficiency in searching for the
best solutions, but the evolutionary approach itself allowed preserving stability and
robustness of the ultimate robotic system.
Vision Guided Robot Gripping Systems
71
distance
[mm]
i
600
.
Baseline
Baseline 2
Baseline 3
i
1
1
i i
'1
1 '
1
550
500
450
400
350
300
250
i
,
,i
.
10
20
3
J 40 50
eo
70 80
90 vantage
point
Fig. 12. Distance between the origins of the Object CS and the Camera 1 CS for each VP
6. Conclusion and future work
A manipulator equipped with vision sensors can be 'aware' of the surrounding scene, what
admits of performing tasks with higher flexibility and efficiency. In this chapter a robotic
system with stereo cameras has been presented the purpose of which was to release humans
from handling (picking, moving, etc.) nonconstrained objects in a threedimensional space.
In order to utilize image data, a pinhole camera model has been introduced together with a
" Plumb Bob" model for lens distortions. A precise description of all parameters has been
given. Two conventions (i.e. the Eulerangle and the unit quaternion notations) have been
presented for describing the orientation matrix of rigidbody transformations that are
utilized by leading robot manufacturers. The problem of 3D object pose estimation has been
explained based on retrieved information from single and stereo images. Epipolar geometry
of stereo camera configurations has been analyzed to explain how it can be used to make
image processing more reliable and faster. We have outlined certain pose estimation
algorithms to provide the reader with a wide integrated spectrum of methods utilized in
robot positioning applications when considering specific constraints (like analytical, or
iterative). Moreover, we have also supplied various references to other algorithms. Two
methods for a threedimensional robot positioning system have been developed and
bridged with the object pose estimation algorithms. Singularities of the robot positioning
systems have been indicated, as well.
A challenging task has been to find a handeye transformation of the system, i.e. the
transformation between a camera and a robot endeffector. We have explained the classic
approach by Tsai and Lenz solving this problem and have used a Matlab Calibration
Toolbox to perform calibration. We have extended this approach by utilizing a genetic
algorithm (GA) in order to improve the system measurement precision in the sense of
satisfactory repeatability of positioning the robotic gripper. We have then outlined other
calibration algorithms and suggested an automated calibration as a step towards making the
entire system autonomous and reliable.
The experimental results obtained have proved that our GAbased calibration method yields
the system precision of ±1 mm and ±1 deg, thus satisfying the industrial demands on the
accuracy of automated part acquisition. A future research effort should be placed on (•)
optimization of the mathematical principles for positioning the robot through some
orthogonality constraints of rotation to increase the system's accuracy, (•) development of a
72 Automation and Robotics
method for computing 3D points using two nonoverlapping images (to be utilized for large
objects), (•) implementation of a handeye calibration method based on the structurefrom
motion algorithms, and (•) implementation of algorithms for tracking objects.
7. References
Andreff, N.; Horaud, R. & Espiau, B. (2001). Robot handeye calibration using structure
frommotion. The International Journal of Robotics Research, vol. 20, no. 3, pp. 228248
Daniilidis, K. (1998). HandEye Calibration Using Dual Quaternions, GRASP Laboratory,
University of Pennsylvania, PA (USA)
Fischler, M.A. & Bolles, R.C. (1981). Random sample consensus: A paradigm for model
fitting with applications to image analysis and automated cartography. Graphics and
Image Processing, vol. 24, no. 6, pp. 381395
Gruen, A.W. (1985). Adaptive least squares correlation: A powerful image matching
technique. South African Journal of Photogrammetry, Remote Sensing and Cartography,
vol. 14, no. 3, pp. 175187
Haralick, R.M.; Joo, H.; Lee, G; Zhuang, X.; Vaidya, V.G. & Kim, M.B. (1989). Pose
estimation from corresponding point data. IEEE Transactions on Systems, Man and
Cybernetics, vol. 19, no. 6, pp. 14261446
Horn, B.K.P. (1987). Closedform solution of absolute orientation using unit quaternions.
Journal of the Optical Society of America A, vol. 4, no .4, pp. 629642
Kowalczuk, Z. & Bialaszewski, T. (2006) Niching mechanisms in evolutionary computations.
International Journal of Applied Mathematics and Computer Science, vol. 16, no. 1, pp.
5984
Kowalczuk, Z. & Wesierski, D. (2007). Threedimensional robot positioning system with
stereo vision guidance. Proc. 13th IEEE/IFAC Int. Conf on Methods and Models in
Automation and Robotics, Szczecin (Poland), CDROM, pp. 10111016
Lu, C.P.; Hager, G.D. & Mjolsness, E. (1998). Fast and globally convergent pose estimation
from video images. IEEE Transactions on Pattern Analysis and Machine Intelligence,
vol. 22, no. 6, pp. 610622
Michalewicz, Z. (1992). Genetic Algorithms + Data Structures = Evolution Programs. Springer,
New York
Phong, T.Q.; Horaud, R.; Yassine, A. & Tao, P.D. (1995). Object pose from 2D to 3D point
and line correspondences. International Journal of Computer Vision, vol. 15, no. 3, pp.
225243
Schweighofer, G. & Pinz, A. (2006). Robust pose estimation from planar target. IEEE
Transactions on Pattern Analysis and Machine Intelligence, vol. 28, no. 12, pp. 2024
2030
Szczepanski, W. (1958). Die Losungsvorschlage ftir den raumlichen Ruckwartseinschnitt.
Deutsche Geodatische Komission, Reihe C: DissertationenHeft, No. 29, pp. 1144
Thompson, E. H. (1966). Space resection: Failure cases. Photogrammetric Record, vol. X, no. 27,
pp. 201204
Tsai, R. & Lenz, R. (1989). A new technique for fully autonomous and efficient 3D robotics
hand/ eye calibration. IEEE Transactions on Robotics and Automation, vol. 5„ no. 3,
pp. 345358
Weinstein, D.M. (1998). The analytic 3D transform for the leastsquared fit of three pairs of
corresponding points. Technical Report, Dept. of Computer Science, University of
Utah, UT (USA)
Wrobel, B.P. (1992). Minimum solutions for orientation. Proc. IEEE Workshop Calibration and
Orientation Cameras in Computer Vision, Washington D.C. (USA)
ClosedLoop Feedback Systems in
Automation and Robotics,
Adaptive and Partial Stabilization
G. R. Rokni Lamooki
Center of Excellence in Biomaihematics, Faculty of mathematics statistics and Computer
Science, College of Science, University of Tehran
Iran
1. Introduction
Feedback controls have applications in various fields including engineering, mechanics,
biomathematics, and mathematical economics; see (Ogata, 1970), (de Queiroz, et al. 2000),
(Murray, 2002), and (Seierstad & Sydsaeter, 1987) for more details. Lyapunov based control
of mechanical system is a wellknown technique. This includes Lyapunov direct/ indirect
methods. Such techniques can be employed to control the whole state variables or a part of
the state variables. Sometimes there are some uncertainties or some reference trajectories
which requires adaptive control. Backstepping is a yet powerful approach to design the
required controller. However, this approach leads to a complicated controller, especially
when the chain of integrators is long. Backstepping can also be used when the aim of
control is the stability with respect to a part of the variables. These three concepts emerge in
a mechanical system like a robot. Adaptive control can be carried out through two different
approaches: indirect and direct adaptive control. Nevertheless there are some drawbacks in
such control systems which are a matter of concern. For example, when there is the
possibility of fault or it is considered to turn off the adaptation for saving energy, when the
system seems to be relaxed at its equilibrium situation, the outcome can be dramatically
destructive. Adaptively controlled systems with unknown parameters exhibit partial
stability phenomenon when the persistence of excitation is not assumed to be satisfied by
the designed controllers. Partial stability technique is most useful when a fully stabilized
system losses some control engine or some phase variables are not actively controlled. Such
situation is most applicable for automatic systems which need to work remotely without a
proper access to maintenance; e.g., satellite, robots to work on other planets or under hard
conditions which are required to continue their mission even if some fault happens, or when
a minimum of controller is required. It is also applicable to biped robots when one of the
engines is turned off, or weakened, for lack of energy or fault or when the robot is passively
designed. It is worth noting that another useful aspect of partial stability and control is the
possibility of controlling the required part of the phase variables without spending energy
to control the part of the variables which is not relevant to the mission of the designed
system. These concepts will be explained through some examples. The results will be
illustrated by numerical computations. This chapter is organized as follows. In section 2 the
74 Automation and Robotics
notion of stability and partial stability will be briefly discussed. In section 3 the adaptive
back stepping design will be introduced with two examples of fully stabilized and partially
stabilized systems. The notion of singlewedge bifurcation will be discussed. In section 4, the
question is: whether in mechanical system singlewedge bifurcation is likely to appear or
not? If so, what sort of instability may occur when such bifurcation takes place? In this
section an example of a simple mechanical system with unknown parameter will be studied.
This mechanical system is a pendulum with one unknown parameter. The reason of
considering such simple system is to emphasize that such undesirable situation is more
likely to take place in more complicated mechanical systems when that is possible in a
simple case. In section 5 a robot will be studied where only one of the phase variables is
actively controlled while there are a reference trajectory and some unknown parameters.
This falls into the category of adaptive stabilization with respect to a part of the variables.
Such technique does not always leads to the objective of the control. We would like to see
that how the geometric boundedness of the system can lead to a successful design.
2. Stability and partial stability
Consider the differential equation
x = f(x). (1)
For any initial value x the solution </>X x o) = x (^ x o) * s called the flow of the system (1).
The point x* is called an equilibrium for (1) if t (x*) = x* for all^>0. Such points
satisfy f(x ) = . Suppose that the vector field / is complete so that the solutions exist for
all time. We call x* an asymptotic stable equilibrium if for any neighborhood U around x*
there is another neighborhood V such that all solutions starting in V are bounded by
U and converge to x* asymptotically. In order to check the stability, one needs to resort
different techniques. Lyapunov has developed important techniques for the problem of
stability, socalled direct and indirect methods. Lyapunov indirect method basically
guarantees local stability of the nonlinear system. Here, the eigenvalues of the linearization
of the system, about the equilibrium x* are examined. If all of them have negative real parts
then the linearized system is globally stable. However, the original nonlinear system is
typically stable only for small perturbations of initial conditions around the equilibrium.
The set of admissible initial perturbations is usually a difficult task to determine. On the
other hand, Lyapunov direct method examines the vector field directly. It is based on the
existence of a socalled Lyapunov function, a positivedefinite function defined in a
neighborhood of the equilibrium x* , with a negativedefinite time derivative. This
guarantees the stability of the system in a neighborhood of x* .
The case where the Lyapunov function is not negativedefinite, but just negative can only
guarantees the stability, but not asymptotic stability. However, through some invariant
properties we can have asymptotic stability too. This is formulated in La' Salle invariant
principle (Khalil, 1996).
Now, we consider the system
ClosedLoop Feedback Systems in Automation and Robotics, Adaptive and Partial Stabilization 75
x = f(x,w), x = (y,z)eR p+q , weR s ,p + q = n. (2)
Here, /(0, 0) = , x is the state and w = w(x) is the feedback controller such that
w(0) = . The vector field / is considered smooth. In the standard Lyapunov based
stabilization with respect to all variables x = (y, z) around the equilibrium, lets say x = ,
we choose a control w(x) such that there exists a positivedefinite Lyapunov function with
a negativedefinite time derivative in a domain around the equilibrium, which then
guarantees the asymptotic stability of x = . In the problem of stabilization with respect to a
part of the variables the notion of y — positivedefinite Rumyantsev function (Rumyantsev,
1957) plays a key role. The domain of a Rumyantsev function is a cylinder
D = {(y,z)\ \\y\\<H,  z ^ oo }, (3)
for some H > .
Definition: The function V : D — > R is called a _y positive definite Rumyantsev function if
there exists a continuous function W(y) with W(0) = which is positive in cylinder (2) so
that V(y, z) > W(y) for all (y, z)eD .
Definition: The system x = f(x, w(x)) is called y  stable or stable with respect to y if for
any £>0 there exists 8 > such that for all initial conditions x Q with \\x \\< S the
solution y(t) satisfies 1 1 jy(7) 1 1< £ . The system x = f(x,w(x)) is called asymptotically
y  stable or asymptotically stable with respect to y if, in addition, there exists a number
A>0 such that for all initial condition x Q with x <A the solution y(t) satisfies
lim^y(t) = 0.
There are several approaches towards analyzing the partial stability. These approaches are
given by (Rumyantsev, 1957); (Rumyantsev, 1970); and (Rumyantsev & Oziraner, 1987); see
also (Vorotnikov, 1998).
There are two major directions to prove asymptotic y  stability: the method of signdefinite
time derivative Rumyantsev function and the method of signconstant time derivative
Rumyantsev function. The former requires a Rumyantsev function with ay negative
definite timederivative, whereas the later considers a Rumyantsev function with a
y — negative timederivative. For simplicity, we refer to these methods by terms sign
definite and signconstant method respectively. See (Rumyantsev, 1957), (Rumyantsev,
1970) and (Vorotnikov, 1998) for more details. The method of the signconstant is based on
two concepts of the boundedness and precompactness; see (Andreev, 1991), (Andreev, 1987)
and (Oziraner, 1973).
3. Adaptive backstepping design
Consider the following system with one fixed unknown parameter
x = f.(x, y,0*\
76 Automation and Robotics
Assume / (0,0,0) = for all 6 . Adaptive backstepping has two steps. First a feedback
y — k(x, 6) is designed with /r(0, 6) = for all 6 , using an estimation 6 for the unknown
parameter 6* . The estimation 6 is updated according to the adaptation 6 — G(x, 6) such
that the x — equation is stabilized. In the next step we need to specify the actual controller
U and parameter adaptation so that g(t) = y(t)  K(x(t), 6(t)) and x(t) converge to zero as
time goes to infinity. As an example, consider the system
x = y + @*(p(x),
y ^ V h (5)
y u.
Here, x, y e R are state variables, u is the controller and 6* e R is the unknown parameter.
Suppose (/> is smooth and ^(0) = . Using the backstepping technique, one can construct
the following controller and parameter adaptation.
\u = v(g) x(p\x) + <F (x)j>\ m(x) + $) 4(x)0,
{6 = <f>(x)[x + g(v\x) + <f>\x)e)\
to achieve the following closedloop system.
x = ju(x) + g + 0(j){x),
g = x v(g) + (ju\x) + <F(x)(G*  §)9<f>(x), (7)
= 0(x)(x + g(ju\x) + 4>\x)(0'  §))
Here, 6 — 6 — 6 is the error of estimation. One can observe that in such system 6 is bounded
and indeed converges to some fixed value depends on initial cinditions. This fixed value
defines a nonadaptive controlle so called limit controller which is accordingly
corresponding to a nonadaptive closed system so called limit system. Surprisingly, such
limit system is not guaranteed to be stabilized. Sometimes such limit system attracts a large
subset of all initial conditions. The occurrence of this situation is called singlewedge
bifurcation. The term singlewedge reffers to the fact that the shape of all initial conditions
absorbed to such destabilized nonadaptive limit systems looks like a wedge. The system
(7), dramatically undergoes a singlwedge bifurcation; that is a transcritical bifurcation
corresponding to a destabilized limit system, possibly with finite escape time, and with a
large basin of attraction; see (Townley, 1999) and (Rokni, et al. 2003) for more details on this
issue and derivation of (6)(7). The problem is not merely about the destabilizing limit
system, that is also about the finite escape time.
Now, we focus on the system
\x = f (x,w,#*),
\ x = (y,z)GR p+q , WGR\p + q=n. (8)
\w = h (x,w,w),
ClosedLoop Feedback Systems in Automation and Robotics, Adaptive and Partial Stabilization
77
Here X, Ware the phase variables, 6* is a vector of unknown parameters, and u e R m is the
controller. Suppose /(0, 0, #) = 0, h(0, 0, 0) = for all 6 . The aim is to design a controller
U such that the closedloop system is stabilized with respect to y while other variables
including parameter adaptation stay bounded. We use the backstepping design, but at each
step we only aim to stabilize y . We use the partial stability approach described in section 2
to design a controller u together with aj positive definite function V with y — negative
definite V . In case of sign constant V , we also need the boundedness property of non
stabilized variables. Consider the following example.
(9)
Suppose (j) is smooth and ^(0,0) = . The adaptive partial stabilization of this system has
two stages. First we stabilize the X — equation with respect to y by assuming that W is the
controller. At this stage we can define w = k(x,6) = b~ l (0(j) 1 + h(y)) where 6 is the
estimation for 6 . Here h satisfies yh{y) > . Next, we stabilize two variables
g = w  k(x, 6) and y using a suitable controller u . This leads to
X =
b
z] T ^R\
y~
= bw
+ 0VW),
z 
cw + 0*<f> 2 (y,z)
w
= u.
{ XJ.I \
by + b~ l fe + b~ x 6
dy
■ + h'
(bgh(y))
b iQ<W_(c g _ cb i§ ( j ) i cb [ h(y) + 00 2 )
dz
Mis),
(10)
e = g
f AJ.1 \
b~ l e
V v
dy
■ + h'
dz
+ y</>\
Here, ju is another function satisfying gju(g) > . It can be shown that under some mild
conditions on <j> , in this closedloop system, the error of parameter estimation 6 — 6 — 6
converges to some value depending on initial conditions. The variable W converges to zero
and Z stay bounded. This system exhibits destabilized limit systems, but no singlewedge
type behavior.
Partial stability phenomena frequently appear in mechanical systems, for example, in
rotating bodies. One classical example is Euler's equations for tumbling box when one or
more controller is omitted. Another wellknown case of partially stabilized systems is
adaptively controlled systems without persistence of excitation. Sometimes the system
capability requires partial stabilization and sometimes the control strategy implies that. In
mathematical model of certain biological systems of n— spices a chain of integrators
appears with the controller located at the last integrator; see (Murray, 2002). Such systems
78 Automation and Robotics
are referred to as strict feedback form and are locally asymptotically stabilizable about the
nominal equilibrium via a recursive design. Such controller is usually very complicated and
contains many unnecessary cancellations; see (Krstic, et al. 1995) for some techniques for
avoiding unnecessary cancellations. However, it might not be necessary to stabilize all the
spices. If that is required, or enough, to fully control a part of these spices while the other
stay bounded, then the designed controller will be simpler and more economic. In these
types of systems, unknown parameters are likely to appear. Therefore, that is vital to study
the possibility of singlewedge bifurcation to avoid destabilizing when the adaptation turns
off. In this chapter we focus on mechanical cases, but the method can be applied to other
fields too.
4. Simple pendulum
A simple pendulum with fixed given length and mass can be represented by
(/> + a0  k sin (f> = u, (11)
Here, (j) is the angle between the rod and the vertical axis, and a > represents the
friction. The pendulum is inverted when k > and is not inverted when k < . We assume
k e R to cover both situations. The absolute value of k is proportional to the gravitation
constant which is assumed to be fixed but unknown. The aim is to design an adaptive
controller which works for any value of k . Note that the case k = , no gravity, is not
generic. The purpose of the control is (^, ^) — > asymptotically. The focus is the
possibility of singlewedge bifurcation. Suppose that there is no friction; that is a = .
Suppose k is the estimation of k and kkk is the error of the estimation. Through a
recursive backstepping design we can find an adaptive controller with a tuning function for
parameter adaptation. We denote x = (j) and y — <fi . Then, the equation (11) becomes
k = y \ (12)
y  k sin x  ay + u.
It needs to remind that we assumed a = . We use the adaptive backstepping approach to
design an adaptive controller. At first step, we consider y as the controller for
x  equation. Using 2V l = x 2 as the Lyapunov function the time derivative of V l is negative
definite by choosing y  h(x) , where h satisfies xh(x) > . Then, we apply the change of
variable g = y 4 h(x) . In the new system of coordinate, the equation (12) becomes
\xg h(x) 9
[g = (k + k) sin x + (g h(x))h'(x)) + u.
Now, we propose the Lyapunov function 2V = x 2 + g 2 + k 2 . The time derivative of V is
xh(x) + g x + k sin x + gW (x)  h(x)h } (x) + u
g sin x  k
(14)
ClosedLoop Feedback Systems in Automation and Robotics, Adaptive and Partial Stabilization 79
We choose
= ju(g) xksinxgh' (x) + h(x)h r (x),
I k = g sin x.
Here, ju is a function satisfying gju{g) > , then
V = xh(x)gju(g).
The threedimensional auxiliary closedloop system is
(15)
(16)
x = gh(x),
< g = ksinxxju(g), (17)
k = £sinx.
The closedloop system (17) is partially asymptotically stabilized with respect to (x, g) . To
see this, one can observe that the auxiliary closed loop system (17) is k — bounded. This
boundedness property together with the fact that V is (x, g, k) — positive definite while V
is sign constant results the required partial stability. Therefore, the origin of the actual
closedloop system (11) and (15) is partially asymptotically stabilized with respect to (^, (/))
regardless the actual value of k and its initial condition. This stabilization is global. In Fig.
1 x(t) and g(t) are drawn for h(x) = x + x 2 + x 3 and ju(g) = g + g 2 + g 3 for initial condition
(x,g,k) = (2,6,6).
(a) (b)
Fig. 1. x(t) and g(t) are drawn for h(x) = x + x 2 + x 3 and ju(g) = g + g 2 + g 3 for initial
condition (x, g, k) = (2, 6, 6) . The horizontal axis is time. The vertical axis in (a) is g(t) and
in (b) is x(t) .
80
Automation and Robotics
The closedloop system (17) has a one dimensional manifold of equilibria defined
by (x, g) = . Every equilibrium on this manifold has one zero eigenvalue due to the
degeneracy appeared in k — equation as a result of adaptive backstepping design. The
stability type of equilibria on this manifold is characterized by two more eigenvalues given
by the linearization of the vector field around those equilibria. One can observe that the
arbitrary equilibrium (0, 0, k^ ) has two eigenvalues given by the polynomial
Z 2 +(h l +ju l )Z + h l ju l +lk ao = 0, (18)
where h x = h '(0) and ju x = ju '(0) . The singlewedge bifurcation may take place when
h l ju l +\ — k cx = , and h x + ju x > . This later condition is always the case as long as both
linear parts of h and ju are not simultaneously zero. We denote this critical equilibrium
with (0, 0, k c ) . We use the change of variables
■■M~
M
1
1
"A
(19)
Here, the column of M are the eigenvectors of the linearization matrix of the (x, g)  part of
the vector field (17) around the critical equilibrium corresponding to the eigenvalues
A x = h x  ju x < and \=0 respectively. Such transformation keeps k invariant. In order
to analyze the closedloop system (17) around its critical equilibrium, we first represent the
system (17) in terms of (p,q,k) and then reduce the resultant system to the center
manifold. Here, the center manifold is given by p = H(q,k) . The center manifold is
invariant and tangent to the linear eigenspace corresponding to the eigenvalue A 2 = .
Therefore,
. dH . dH ~
p = q\ — —k.
dq dk
(20)
The lengthy, but straightforward procedure of center manifold calculation leads to the
following truncation of the reduced system
\q = Ps 2 +P 2 qk+qO(\q,k\ 1 \
\k = r x q 2 +qO(\q,k\ 2 ).
(21)
Here,
_ ji l h 1 +h*/i 2 1
h l + ft, h x +/Li x
v
(22)
ClosedLoop Feedback Systems in Automation and Robotics, Adaptive and Partial Stabilization 81
where, 2h 2 = h"(0) and 2// 2 = //"(0) . It can be observed that the reduced system (21) is
degenerate. We utilize the singular time reparametrization (Dumortier & Roussarie, 2000);
that is t = — T to achieve the divided out system
q
* P3)
^ = k' = ri q + 0(\q,kn
which is generically hyperbolic around the origin. The singular time reparametrization
keeps the orbits but the direction of which are reversed when q < . In order to have single
wedge bifurcation for the closedloop system (17), it is sufficient that the origin of the system
(23) become a node, either stable or unstable. The characteristic equation of the origin of the
system (23) is
rftAfry^O. (24)
The sign of the discriminant of this algebraic equation is equivalent to the sign of
8 = Aju 2 + Bh 2 + Cju 2 h 2  a>, (25)
where,
A = h x \ B = ju x \ C = 2ju x h x \ a> = 4h x 2 +4h x ju x . (26)
The origin of the divided out system (23) is a center when 8 < . This implies that the
center manifold (21) has a semicenter at the origin. This causes that the critical equilibrium
of the closedloop system (17) to have a semicenter. However, whenS > , the origin of
the divided out system (23) is a node; therefore, the critical equilibrium of the closedloop
system (17) undergoes a singlewedge bifurcation. It can be observed that 8 < is
corresponding to the stripe
in (jU 2 ,h 2 ) parameter space. It is worth noting that the second order derivatives of h and
/J control the occurrence of the singlewedge bifurcation. When ju 2 = h 2 = , we have
8 < and there will be no singlewedge bifurcation. When  (ju 2 ,h 2 ) \\ is large enough, that
is  jii 2 + C I (2A)h 2 > 2 / h x (1 + ju x I h x )° 5 , the parameter 8 become positive and single
wedge bifurcation takes place. With ju 2 = , the critical values of h 2 are
h 2 = ±2h x I ju x {\ + h x I ju x )° 5 , and for h 2 = , the critical values of ju 2 are
/<= ±2 //*,(!+//, ih,r.
82
Automation and Robotics
In Fig. 2, the singlewedge bifurcation appeared in the reduced system (23) is shown for the
case h(x) = x + 2x 2 + x 3 and ju(g) = g + Ig 1 + g 3 . Here /?> =4, y? 2 = 0.5, ^ = 1 . The
wedge region is the set of all initial conditions attracting to the origin where the limit system
is unstable. The black curves are orbits converging the bifurcation point. The wedge is the
lower right area limited by the border, tick horizontal line and one of the orbits.
Remark 1: The singlewedge bifurcation generically appears due to the nonlinear terms in
feedbacks. One might argue that by applying linear feedbacks such situation can be
avoided. However, linear feedbacks are applying through devices which may introduce
some amount of nonlinear ities. The width of the stripe defined by (27) depends on h x and
ju x and is bounded by 7] = 4 / \ (1 + ju x I \ )° 5 . The linear coefficients h x and ju x determine
the local convergence. When they are small the convergence will slow down. One can
observe that if we expect similar rate of local convergence for both x and g , then
rj = 4v 2 / h x approximately. For large enough h x the area where the singlewedge
bifurcation does not take place will narrow down. To extend this region one needs to slow
down the convergence process which may not be desirable. Another reason to consider this
situation is to illustrate that how such behavior happens in a simple system. In a more
complicated case, such dramatic behavior may occur generically.
0.5 0.5
Fig. 2. The singlewedge bifurcation is shown for h{x) = x 4 2x 2 + x 3 and
ju(g) = g 4 2g 2 + g 3 . The horizontal axis is k and the vertical axis is q . The tick horizontal
line represents the manifold of equilibria.
Remark 2: In our analysis, we assumed that a  . By some algebraic calculation, it can be
observed that including the term ay with a ^ will only shift the value of ju x by the
amount of a . It can be understood from equation (21) that the limit system corresponding
to k x > is unstable, but due to the linear part J3 2 k x q , the limit system will be only
unstable and finite escape time will not arise. It suggests that the closedloop inverted
ClosedLoop Feedback Systems in Automation and Robotics, Adaptive and Partial Stabilization 83
pendulum with limit controller and without parameter adaptation can stay stabilized if it
will not fall into the basin of attraction of the equilibrium (0, 0, k c ) .
5. Biped robots
A passive bipedal robot with elastic elements has been studied in (Asano & Wei Luo, 2007),
where a feedback control has been designed. Here we consider the same model when there
is an unknown parameter. The governing equation is
M(q)q + h(q, q) + — = Su. (28)
dq
Here q — \6 x 6 2 b 2 ] are the geometrical variables of the robot, M(q) is the inertia matrix,
h(q,q) is the vector of Coriolis centrifugal and gravity forces. The elastic energy is defined
Q = ^k(b 2 b ) 2 , (29)
where, b Q is the normal length of the leg and k is an unknown parameter; see (Asano &
Wei Luo, 2007) for more details.
The vector S = [0 l] requires that the walk is passive and only the elastic element is
under control. We introduce the following variables
X = [x, x 2 x 3 ] = [6> 2 b 2 ], Y = X, X a =b,S. (30)
This leads to
J* = 7 ' (31)
{Y = M l hkM l (XX ) + M l Su.
We omitted the arguments of the functions for simplicity, but all changes in variables need
to be applied in functions arguments. Suppose X d = Sx d is the reference signal. We define
the error by e = X d — X . The equation (31) becomes
\e = X d Y, p 2 j
[Y = M l hkM l (X d eX Q ) + M~ l Su.
We proceed with adaptive backstepping technique to partially stabilize the system with
respect to (e 3 ,e 3 ) . Suppose  e 3 \ 2 < V x is an e 3  positive definite Rumyantsev function with
time derivative
84
Automation and Robotics
dK . dK , •
de de
(X d Y).
(33)
The first step of backstepping approach can be proceeded by considering Y as the
controller of X — equation. We can choose
Y = X d+M (e).
The time derivative of V l will become
dV
V l =^ J u(e) = w(e).
de
(34)
(35)
By choosing a suitable function ju we achieve an e 3  positive definite w . Now, we
introduce an auxiliary variable
g = Y(X d+J u(e)).
For simplicity we take
(36)
1 2 3
In this new coordinates we get the following auxiliary system
\g 3 = S T [ M~ l h kM l (X d  e X ) X d  ju'(e)e]+ tju.
(37)
(38)
Here, r/ = S T M l S . Suppose k = k + k , where k is the estimation of k and k is the error
of estimation. We introduce the following Rumyantsev function
V = V 1 (e) + V 2 (g) + K(k).
Without loss of generality we can take
(39)
V 2 =g;, V 3 =k 2 .
2 2 3 3 2
(40)
The time derivative of V becomes
V = e 3 fi(e 3 )
■?3
k
S T [M l hkM~\X d eX )X d  //' ju + ju'g e 3 ] + rju
kg 3 S T M\X d eX )
(41)
We choose the controller and the parameter adaptation as
ClosedLoop Feedback Systems in Automation and Robotics, Adaptive and Partial Stabilization 85
rju=v(g 3 )
S T (M l hkM\X d eX )X d ju'ju + ju'ge,} ( 42 )
k = gS T M\X d eX ).
We choose a suitable function v such that tjg 2 v > . These leads to
V = ^L J u(e)t ] g } v(.g } ). (43)
oe
The function V is positive definite with respect to (e 3 ,g 3 ,k) , but (43) states that its time
derivative is negative semidefinite, because k is not included in (43). One can observe that
two angels 6 X ,6 2 are always bounded; see (Asano & Wei Luo, 2007). It is also clear that the
vector field (31) is smooth. We can also assume that feedbacks are smooth. Therefore, the
nonstabilized variables stay bounded. So we can construct the cylinder (3) and employ the
boundedness property stated in section 2 to achieve the required partial stability.
6. Conclusion
We have seen that in relatively simple mechanical systems like a pendulum, having an
unknown parameter may leads to an adaptive controller which undergoes an undesirable
behaviour, dramatically. According to the questions addressed in introduction of this
chapter, we have found that the destabilising limit system with a large basin of attraction
does not perform a finite escape time. Instead, that will be only unstable. It is clear that
when the pendulum is not inverted, we do not expect to see such situation. That is apparent
from the centre manifold analysis too. It is worth noting that, lack of adaptation, does not
mean that there is no control. It only means that the controller is converged to a limit
controller, but the system is still closedloop. For inverted pendulum, such nonadaptive
limit controller works perfectly, as long as the system does not fall into the region of
attraction of the critical limit system. This shows a drawback of backstepping approach.
There is still a question: how such situation can be overcome without further knowledge of
the system?
When we design a partially stabilized system, the method of sign definite and sign constant
work in two different ways. When the time derivative of Rumyantsev function is not
negative definite, one would employ boundedness or precompactness. None of them can be
directly applied to the system, without any further knowledge of the system's dynamics or
geometry. In case of section 5, assuming that two angels are both bounded during procedure
and that the vector field is smooth, we can conclude that the closedloop system is indeed
stabilized with respect to leg's length. Otherwise, such conclusion would not be
straightforward. The difficulty relates to differences between the appearance of non
stabilized variables and the unknown parameters. One can assume that nonstabilized
variables satisfy the precompactness property. In another assumption, one can observe that
the parameter estimation stay bounded if the controller is designed properly. However, in
many systems, these two sets of nonstabilized variables and parameter estimation may
belong to different categories satisfying precompactness or boundedness. In the example of
section 5, both stayed bounded and we achieved the aim of stabilization. However, this
86 Automation and Robotics
method has a drawback. Stabilization with respect to one variable and the boundedness of
others does not guarantee that the system works properly, since they are just bounded. One
would not worry about the parameter estimation as long as that is bounded and converges
to some value depending on initial conditions, but the phase variables may exceed the
mechanical capacity of the system. Therefore, after designing a partially adaptive controller
for a system, one needs to work out on mechanical advantage and disadvantage of the
closedloop system. Such procedure is not accomplished in section 5. Another issue in
controller designed by (42) is the asymptotic convergence. This is always the case when we
have some unknown parameter.
7. References
Andreev, A. S. (1987) Investigation of partial asymptotic stability and instability based on
the limiting equations, /. Appl. Maths. Mechs., 2, 51, 196—201.
Andreev, A. S. (1991). An investigation of partial asymptotic stability, /. Appl. Maths. Mechs.,
4,5,429435.
Asano, F. & Wei Luo, Zh. (2007) Parametrically excited dynamic bipedal walking, in Habib,
M. K. (2007) Bioinspiration and Robotics: Walking and Climbing Robots, ITech
Education and Publishing, Vienna, Austria, 114.
Dumortier, F. & Roussarie, R. (2001) Geometric singular perturbation theory beyond normal
hyperbolicity, in Jones, C. K. R. T. and Khibnik, A. I. (editors) Multipletimescale
dynamical systems, Springer Verlag, New York, 2963.
Khalil, H. K. (1996) Nonlinear systems, PrenticeHall, London.
Krstic, M. & Kanellakopoulos, I. & Kokotovic (1995) Nonlinear and Adaptive Control Design,
John Wiley & Sons, New York.
Murray, J. D. (2002) Mathematical biology, 3 rd ed., Springer, Berlin.
Ogata, K. (1970) Modern control engineering, PrenticeHall, London.
Oziraner, A. S. (1973) On asymptotic stability and instability relative to a part of variables, /.
Appl. Maths. Mechs, 37, 659665.
de Queiroz, M. S. & Dawson, D. M. & Nagarkatti, S. P. & Zhang, F. (2000) Lyapunovbased
control of mechanical systems, Birkhauser, Boston.
Rokni Lamooki, G. R. & Townley, S. & Osinga, H. M. (2003) Bifurcation and limit dynamics
in adaptive control systems, Int. J. Bif. Chaos, 15, 5, 16411664.
Rumyantsev, V. V. (1957) On the stability of motion with respect to the part of the variables,
Vestnik Moscow. Univ. Ser. Mat. Mech Fiz. Astron. Khim., 4, 916.
Rumyantsev, V. V. (1970) On the optimal stabilization of controlled systems, /. Appl. Maths.
Mechs, 3, 34, 440456.
Rumyantsev, V. V. and Oziraner, A. S. (1987) The Stability and Stabilization of Motion with
Respect to some of the Variables, Nauka, Moscow.
Seierstad, A. & Sydsaeter, K. (1987) Optimal control theory with economic applications, North
Holland, Netherland.
Townley, S. (1999) An example of a globally stabilizing adaptive controller with a
generically destabilizing parameter estimate, IEEE Trans. Automat. Control, 44, 11,
22382241.
Vorotnikov, V. I. (1998) Partial Stability and Control, Birkhauser , Boston, MA.
Nonlinear Control Law for
Nonholonomic Balancing Robot
Alicja Mazur and Jan K^dzierski
Institute of Computer Engineering, Control and Robotics,
Wroclaw University of Technology,
ul. Janiszewskiego 11/17, 50372 Wroclaw,
Poland
1. Introduction
In the paper a new control algorithm for special mobile manipulator, namely
for nonholonomic balancing robot, has been presented. A mobile manipulator is defined as a
robotic system composed of a mobile platform equipped with nondeformable wheels and a
manipulator mounted on the platform. Balancing robot is in fact a mobile robot, which
platform can be considered as an inverted pendulum (i.e. rigid manipulator) mounted on
the axis with two conventional fixed wheels. Such the axis it is called in the literature a
mobile robot with structure of unicycle (Canudas de Wit et al., 1996). The balancing robot
considered in this work is presented in Fig. 1.
Taking into account the type of mobility of their components, there are 4 possible
configurations of mobile manipulators: type (h,h)  both the platform and the manipulator
holonomic, type (h,nh) a holonomic platform with a nonholonomic manipulator, type
(h,nh) a nonholonomic platform with a holonomic manipulator, and finally type (nh,nh)
both the platform and the manipulator nonholonomic. The balancing robot is a mobile
manipulator of (nh,h) type because nonholonomic constraints occur only in the motion of
the mobile part (wheels) and the motion of the inverted pendulum (rigid manipulator with
only one degree of freedom) is holonomic.
In the literature it can be found control laws for balancing robot but all solutions to this
problem use either local linearization of the model (Segbot, 2004) or linear controllers (R.
Chi Ooi, 2003). Such linear models and controllers are valid only local, near the desired
configuration and therefore their application is limited only to stabilization of the pendulum
about a d = . However, if the fully nonlinear character of the dynamics is explored, then it
is possible to obtain other nonlinear control laws preserving not only point stabilization of
the pendulum but the trajectory tracking, too. In this work a new nonlinear control
algorithm for balancing robot guaranteeing trajectory tracking for the inverted pendulum is
introduced.
This paper is organized as follows. In Section 2 a mathematical model of nonholonomic
balancing robot is obtained. Nonholonomic constraints in the model come from an
assumption about frictionless motion of robot's wheels. In Section 3 control problem is
88
Automation and Robotics
formulated. Section 4 is devoted to the design of nonlinear control algorithm. The proof of
the convergence of this algorithm is included. Section 5 contains simulation results which
illustrate proper working of the proposed nonlinear controller. In Section 6 some
conclusions are presented.
Fig. 1. Balancing robot: inverted pendulum with two fixed wheels on common axis
2. Mathematical model of nonholonomic balancing robot
We consider the mobile manipulator which consists of two subsystems, namely of rigid
manipulator (inverted pendulum) and mobile platform (two fixed wheels located on
common axis  unicycle).
2.1 Nonholonomic constraints
The motion of wheels can be described using generalized coordinates q m
lized velocities q m e R 5 .
; R 5 and genera
q T m={ x y A A)
where (x,y) denote Cartesian coordinates of the center of the axis relative to the basic frame
X Y , 6 is an angle between X p and X axis and (f) i is a rotation angle of zth wheel. The
mobile subsystem should move without slipping of wheels. This assumption implies the
existence of 3 independent nonholonomic constraints which can be expressed in the so
called Pfaffs form
4^k=0'
(i)
Nonlinear Control Law for Nonholonomic Balancing Robot
89
where A{q m ) is a full rank matrix of (3 x 5) size. Due to (1), since the platform velocity is
always in the null space of A, it is always possible to find a vector of special auxiliary
velocities r/ <=R m , m = 53 = 2 , such that
where G\q m ) is an 5 x 2 full rank matrix satisfying A{q m ]G{q m ) = .
(2)
2.2 Dynamic model of the mobile manipulator of (nh, h) type
Let a vector of generalized coordinates of the mobile manipulator be denoted as
^
eR 6
where q m eR 5 is a vector of generalized coordinates for the mobile platform and aeR
describes an angle between the inverted pendulum (axis X w ) and vertical direction. Because
of the nonholonomic character of constraints, to obtain the dynamic model of the balancing
robot, the d'Alembert Principle should be used
M(q)q + C(q,q)q + D(q)= A(q m )X + B(q)r
The model of dynamics (3) can be expressed in more detail as
(3)
M n M l:
where
M{q) =
C(q,q) =
D{q) =
/lei? 3 
B{q) =
M iM) M Aq)
M 21 (q) M 22
C u (q,q) C 12 (q,q)
C 21 (q,q)
c c
c c
^21 ^22
inertia matrix,
A T X
v ° j
v°y
■ matrix coming from Coriolis and centrifugal forces,
 vector of gravity,
vector of Lagrange multipliers,
B{q m ) 0"
 input matrix,
■ vector of controls.
The model of dynamics (3) of the (nh,h) mobile manipulator is often called a model in
generalized coordinates.
90
Automation and Robotics
Now we want to express the dynamics using auxiliary velocities (2) for the mobile platform.
We compute
'4 m =G(q m )n + G(q m )ri
and eliminate from the model (3) the vector of Lagrange multipliers (using the condition
G T (q m )A T \q m ) = ) by leftsided multiplying the mobile platform equations by G T \q m )
matrix. After substituting for q m and q m we get
G T M U G G T M r
M^G M 99
V
G T (c n G + M n G) G T C U
C,G
r
( G T Br m
(4)
We introduce a new symbol covering centrifugal and Coriolis forces as well as gravity. Then
we obtain the model expressed in more compact form as follows
M"
K F 2J
Bt m
(5)
where the arguments of matrices and vectors are omitted for the sake of simplicity. We will
refer to the model (5) as the model of dynamics of the (nh,h) mobile manipulator expressed
in auxiliary variables.
2.3 Partial global linearization
The dynamic model of nonholonomic balancing robot can be considered as a mobile
manipulator with one passive degree of freedom (degree of freedom without actuator). The
role of this passive joint plays the inverted pendulum. For such the object it is possible to
introduce due to (De Luca et al., 2001) partial global linearization, which transforms the
model in auxiliary velocities to a form more convenient from control's point of view. For this
reason we extract a from the second matrix equation of (5)
^ = {KiY{Kii + K)
(6)
and put it into the first equation, (Ratajczak & Tchon, 2007). Then we get the following
expression
M{q)n + F{q,q) = B , t m
(7)
where
M{ q )=M\ 1 m 1 * 2 (^)m;( ? ) i m;( ? )
F(q,q) = F;M; 2 (q)M; 2 (qy i F;(q,c l )
Now a linearizing control law with a new control input u should be introduced
T m ={By{M{q)u + F{q,q))
(8)
Nonlinear Control Law for Nonholonomic Balancing Robot 91
to get a model (5) defined as a partially linearized control system
la = {M* 22 y(M* 21 ?7 + F;)
rj u
Such a system is a point of departure to design a new nonlinear control algorithm
preserving not only point stabilization but trajectory tracking as well.
3. Control problem statement
In the paper we will find a control law guaranteeing the proper behaviour of the balancing
robot. The task of the robot is to follow the desired trajectory a d (f) (trajectory tracking or
point stabilization) of the inverted pendulum without slipping of platform's wheels.
A goal of this paper will be to address the following control problem for balancing robot
given by the model (9):
Find control law u such that the balancing robot with the known dynamics follows a
desired trajectory a d (t) without slippage of platform's wheels and tracking errors
converge against zero.
To design a controller for the such the mobile manipulator, it is necessary to observe that
complete nonholonomic system (9) is a cascade with two subsystems. For this reason the
structure of the controller is divided into two parts due to backsteppinglike procedure
(Krsticetal.,1995):
1. kinematic level  r/ r represents an embedded control input, which ensures the
convergence the real trajectory a of the inverted pendulum to the desired trajectory
a d (t) for the equation of constraints (6) if the dynamics were not present,
2. dynamic level  as a consequence of cascaded structure of the system model, the
pendulum's angle a cannot be commanded directly, as is assumed in the design of
control on kinematic level, and instead it must be realized as the output of the partially
linearized dynamics driven by u. The dynamic input u intends to regulate rj toward
the embedded control input rj r , and therefore, attempts to provide control input
necessary to track the desired trajectory.
Because there exists a difference between the real velocity of the mobile platform rj and the
embedded control input rj r at the start position, it is necessary to account for the influence of
the error e^ = rj  r/ r on the behaviour of the full mathematical model of the nonholonomic
balancing robot.
4. Nonlinear control law
4.1 Reference auxiliary velocities //
Let some reference functions describing desired accelerations of platform's wheels will be
defined as follows
{M'^Y{M'^ r +K)=^KAK p e a , K d ,K p >0, (10)
92 Automation and Robotics
where
e a = aa d
is a tracking error of the inverted pendulum. It is obvious that r/ r is not unique defined,
because this equation is scalar and t] r gR 2 . However, it is possible to assume some
relationship between rj lr and rj 2r (for instance rj lr = r/ 2r ) and to get unique solution of (10).
The motion of wheels with velocities r/ r preserves convergence of the inverted pendulum to
the desired constant configuration c^ or to the desired trajectory a d (t) . The main problem is
that the real velocities of wheels rj are not equal to the reference velocities rj r at the
beginning of the motion. It means that some errors occur on the dynamic level and disturb
the behaviour of the balancing robot. Therefore we want to prove using Lyapunovlike
function that the properly chosen control law on dynamic level can guarantee the
asymptotic convergence of these errors to zero. As a consequence we obtain stabilization of
the pendulum about the desired trajectory (or configuration).
4.2 Nonlinear controller
We consider the model of the balancing robot (9) expressed in auxiliary variables. We
assume that we know the solution rj r to the constraints equation (10), which preserves a
convergence of real coordinate a(t) of the inverted pendulum to the desired trajectory
a d (t) . Then we propose a new control algorithm guaranteeing asymptotic trajectory
tracking for all coordinates of the mobile manipulator. This control law is defined by
expression
u = rj r K m e 1J , Km> o (11)
where K m is some diagonal regulation matrix and
ririr
Viriir
is an error appearing on dynamic level, if real velocities of wheels are not equal to reference
velocities, i.e. r/(0)^ r/ r (0) . In such a situation, on the dynamic level we have the dynamic of
the closedloop error given by
K+K m e„=0 (12)
which due to positive definiteness of K m matrix is exponentially fast convergent to 0. On the
other side, on kinematic level (the equation describing constraint, i.e. trajectory of a passive
joint) the motion of the inverted pendulum is disturbed in the following way
a = {M'nYM'Jjjr  K m e„) {m^ F' 2 =a t  K d e a  K p e a + {m'J'k^ . (13)
Nonlinear Control Law for Nonholonomic Balancing Robot
93
4.3 Proof of convergence of the control algorithm
Lets consider trajectories of the disturbed closedloop system (12) and (13). We choose the
following Lyapunovlike function
Vie ,e ,e ) = —(e +e ) 2 +e T e
Now we calculate the time derivative of V
(14)
which along solutions of the closedloop system (12)(13) is equal to
V = (e a +e a )(e a K d e a K^+iM^M'^K^^K^
= ~e a e a K 2  K/ a  (K d  l)e 2 a  <?K m e v + e a K^ + k a K,e n
with parameters defined in the following way
(15)
K x = (M; 2 fM' 21 K m =S^L[ Kmn/Krni2 l K 2 =K p +K d l
P
where I p is a moment of inertia of the inverted pendulum. Then the time derivative of the V
function can be evaluated by the expression
V<e a e a K 2 K/ a {K d IftK.^ K m22 e\ 2 +K 3 (e a +ej(e, 1 +e„ 2 )
^22 2 ( K 2 .
— —e +e  — e +e
K/ a {K d \)e\ K mll e 2 nl K m72 e\ 2 +K 3 (e a +e a )(e^ +e,
S7I ^^2 J
<{K p l)el
K A \
K
£  K mll^l ~ K m22^2 + K 3 (*« + K ) (?r,l + 3,2 )
with
K, = max w
cosa cosa
K  * K
mil
V p p
Using the same method of estimation, we can obtain the following formula
V<
K p l*f\el
K d 1$L$ (K mll  l)<  (K m22  1>,\ < . (15)
If the regulation parameters K m , K p , Kd are properly chosen, i.e.
K mll >l f
K m22 > 1 ,
' >1+— ,
K d >l + —
2
2
then from LaSalle invariance principle we can deduce that all errors, i.e. \e a ,e a ,e ) converge
to asymptotically.
94
Automation and Robotics
5. Simulations
As the object of simulations we have chosen a model of the inverted pendulum on two fixed
wheels presented in Fig. 1. The goal of simulations is to examine the behaviour of the
presented control algorithm using a full knowledge about the dynamics. The motion of the
closed loop system has been examined by simulations which have run with the MATLAB
package and the SIMULINK toolbox.
• First, the desired trajectory for inverted pendulum was chosen as a constant
configuration a d =7r/3. The start position of the platform was equal to
(jc(0), y(0), 0(0)) = (0,0,0) and start position of the manipulator a(0) = 0. In Fig. 2b
tracking terror e t for the mobile platform have been shown. The relationship between
reference velocities is selected as rj lr = rj 2r (straightforward motion). Figure 2a presents
tracking error e a for the inverted pendulum. The gains of control parameters used for
getting plots presented in Figure 2 are equal to
K = 50 ,
K„ = 100 ,
K A = 50 .
e J "
2
.... ..
a)
e m —
0.4 0.6
b)
Fig. 2. Tracking errors occurring in the balancing robot during tracking constant
configuration: a) e a b) e t
• Next, the desired trajectory for inverted pendulum was chosen as a slowly changing
periodic function a d (t) = 0.05sin(//10). The start position of the platform was equal to
(x(0), y(G), 0(0)) = (0,0,0) and start position of the manipulator a(0) = 0. In Fig. 3b
tracking error e x for the mobile platform has been shown. The relationship between
reference velocities is selected as rj lr =rj 2r . Figure 3a presents tracking error e a for the
inverted pendulum. The gains of control parameters used for getting plots presented in
Fig. 3 are equal to
K = 50 ,
K n = 100 ,
K,=50.
Nonlinear Control Law for Nonholonomic Balancing Robot
95
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
=^l
—  e tiii
2 3
t!:T0
0.4 0.6
b)
Fig. 3. Tracking errors occurring in the balancing robot during tracking periodic trajectory:
a) e a b) e nl
6. Concluding remarks
In the paper a new control algorithm for nonholonomic balancing robot (inverted pendulum
mounted on a two fixed conventional wheels) has been introduced. The algorithm covers
not only stabilization of the pendulum about a desired constant configuration a d , not
necessary 0, but the tracking of some timedependent trajectory as well. Differently from
previous works presenting control problem of the balancing robot, the motion of the robot is
not restricted to straightline motion but it is possible to realize more complicated
manoeuvres on XY plane without slipping of robot's wheels. It depends on the selection of
relationship between reference velocities designed for the wheels, what case of robot's
motion will be realized in practice.
In our forthcoming research we will focus on extending the presented approach to other
cases of mobile manipulators (nh,h) with different structures of passive joints.
8. References
C. Canudas de Wit & B. Siciliano & G. Bastin. Theory of Robot Control, Springer Verlag,
London, 1996.
A. De Luca & S. Iannitti & G. Oriolo. Stabilization of the PR planar underactuated robot.
Proc. IEEE International Conference on Robotics and Automation (ICRA 2001), pp.
20902095, 2001.
M. Krstic & I. Kanellakopoulos & P. Kokotovic, Nonlinear and Adaptive Control Design, J.
Wiley and Sons, New York, 1995.
A. Ratajczak & K. Tchori. Control of underactuated robotic manipulators: an endogenous
configuration space approach. Proc. IEEE Conf. on Methods and Models in
Automation and Robotics MMAR 2007, pp. 985990, Szczecin, 2007.
96 Automation and Robotics
Rich Chi Ooi, Balancing a Twowheeled Autonomus Robot, The University of Western Australia;
Final Year Thesis, 2003.
Segbot  Final project for the Introduction to Mechatronics class at the University of Illinois
http:/ / coecsl.ece.uiuc.edu/ ge423/ spring04/ group9/ index.htm, 2004.
Deghosting Methods for TrackBeforeDetect
Multitarget Multisensor Algorithms
Przemyslaw Mazurek
Szczecin University of Technology
Poland
1. Introduction
TrackBeforeDetect (TBD) algorithms are very powerful for tracking applications. In
comparison to classical (DetectBeforeTrack) algorithms they are computationally
demanding but allow achieving incredible SNR (SignaltoNoise Ratio) performance. For
classical systems SNR should be greater then one. If this condition is fulfilled classical
tracking algorithms does not need a lot of computations and they process acquired data by
filtering, detection and estimation algorithms. Typical detection algorithms based on fixed
or adaptive threshold fails for SNR<1 because if signal is below noise floor a lot of false
measurements occurs or target can not be detected correctly. Improving performance for
low SNR systems is very important from applications point of view and it is research very
active area using alternative approaches and improved algorithms.
TrackBeforeDetect algorithms are excellent alternative for low SNR signals because signal
(target) detection is processed after intensive testing set of hypotheses related to possible
signal states (e.g. object trajectories). Even if there are no any signal from target complete
search is used for best performance. Huge discrete statespace needs a lot of computations
mostly not related to real state of target. Today available computing devices like fast
processors, specialized VLSI circuits and distributed computing methods allows gives a
possibility of using realtime TBD algorithms for dim target tracking. It is worth to be noted
that computation cost for TBD algorithms is serious disadvantage because it significantly
influent on financial cost of system but it can be meaningful for military applications (air,
naval or space surveillance) where plane, ship or political costs are much more significant.
There are two groups of TBD algorithms. The first one group contains deterministic TBD
algorithms statistical computations oriented for results calculation. All hypotheses are tested
and computation cost is usually constant. The second one group contains nondeterministic
TBD algorithms. Such algorithms do not test all hypotheses only use statistical methods for
finding most probable results but optimality of results is not guarantied. For example
particle filters are statistical search based and they gives results sometimes faster in
comparison to first group of algorithms (Gordon et al., 1993; Doucet et al., 2001;
Arulampalam et al., 2002; Ristic et al., 2004), but deterministic group is much more reliable
for many application and is only considered in this chapter. For realtime applications first
group has advantages of results quality and constant processing time  very important for
98 Automation and Robotics
every system developer. It is worth to be noted that useful TBD algorithms for practically
applications are not optimal. There is optimality in some sense for particular algorithms but
only bath processing is optimal from detection quality pointofview. Bath algorithm tests
all hypotheses (all object trajectories) using all information from beginning up to actual time
moment (Blackman & Popoli, 1999). Unfortunately bath processing is not feasible for real
time applications because memory and computation cost is growing. Much more popular
are recurrent TBD algorithms and last results and actual measurements are used for
computations (like l'st order IIR filter). There are also popular algorithms based on FIR
filters and they use Ntime moments for computation results.
Independently on computation cost of TBD there are other limitations that are challenges for
developers. Classical and TBD algorithms are quite simple for single object tracking but
more complex approach is necessary if there are multiple targets or false target due to
measurement errors. A false measurement occurs due to occasional high noise peaks that
are detected as targets. Assignment, targets track live control, targets separation algorithms
and multiple sensors are considered for multiple target tracking. Excellent books (Blackman,
1986; BarShalom & Fortmann, 1988; BarShalom ed. 1990; BarShalom ed. 1992; BarShalom
& Li, 1993; BarShalom & Li, 1995; Brookner, 1998; Blackman & Popoli, 1999; BarShalom &
Blair eds. 2000) includes thousand references to much more specific topic related papers are
available but there is a lot of to discover, measure and investigate.
Most multiple target tracking algorithms are related to classical systems but there are also
well fitted algorithms for improving TBD trackers. Simple method is using TBD algorithm
results as input for high level data fusion algorithm that should be tolerant for redundant
information from TBD algorithms. Very important part of TBD is statespace that should be
adequate for application and decide about algorithm properties significantly. In this chapter
is assumed strength correspondence of statespace to the measurement space. It allows
simplify description of behaviours of TBD algorithms using kinematics properties. The
measurement space depends on sensor type. From Bayesian point of view different sensors
outputs can be mixed for calculation joint measurements. This data fusion approach is very
important because there are sensors superior for angular (bearing) performance like optical
based and sensors superior for distance measurements like radar based. Diversification of
sensors for measurement for tracking systems improvements is contemporary active
research area. Progress in optical sensors development for visible and infrared spectrum
gives passive measurements ability that is especially important for military applications and
linear and twodimensional optical sensors (cameras) are used. Unfortunately distance
measurement using single sensor without additional information about target state is not
possible. Another disadvantages of optical sensors is an atmospheric condition so dust,
clouds, atmospheric refraction can limits measurement and tracking abilities for particular
applications. Because targets move between sensors and background (for example moving
clouds) background estimation is a very important for improving SNR. Another problem is
optical occlusion that limits tracking possibilities (for example aircraft tracking between or
above clouds layer). Such limitations related to optical measurement sensors are related to
single and multiple targets tracking also, but there is another nontrivial multiple target
related problem known as a ghosting (Pattipati et al, 1992). For every bearing only system
ghosting should be considered and suppression methods should be used or obtained
tracking results are false.
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
99
2. Ghosting and basic methods of ghost suppression
2.1 Ghosting
In this chapter are considered sources of ghosts and methods for suppression them using
illustrative examples for usually hard to visualize high dimensionality state spaces. For
single or multiple targets positions estimation two or more sensors are necessary. Using LOS
(LineofSight) triangulation target position and distance estimation is possible.
true targets,
false targets (ghosts)
Fig. 1. Two targets and two ghosts
Assuming two targets and two sensors triangulation fails because there are two possible
solutions:
Tl and T2 
T3 and T4 
or
Tl and T2  false targets (ghosts),
T3 and T4  true targets.
If there is no available additional information there is no answer which solution is correct.
This problem is not related to tracking method only to geometrical properties of bearing
only sensors and common to classical and TBD tracking systems. Many methods can be
used for finding solution or eliminate some false assignments.
Fig. 2. Ghosting in 3D observation space
100
Automation and Robotics
If two targets are on common plane (Oi, O2, Ti and Oi, O2, T2) ghost effect occurs (Fig.2). It
can be little surprising that number of ghosts is smaller for 3D space in comparison to 2D
space. If one of the targets is placed outside second plane ghost effect does not occur (Fig.3).
For 2D space ghosts are always (Fig.l).
Fig. 3. Two targets and no ghosts in 3D space
2.2 Influence of measurement errors
Angle measurement errors can influent on results for trivial cases. Due to calibration errors
and measurements noises all LOS for single target do not cross in single point (Fig.4). For 2D
object plane all LOS are crossed but not in single point but for 3D space practically they
almost never cross and approximation is required. If there are multiple closely located
targets problem arises.
Fig. 4. True objects T3 and T4 are dispersed due to measurement errors
Increasing number of sensors is probably most popular solution, because for true targets
number of LOS crosses increases also. Unfortunately number of ghosts increases also.
Using additional information about targets is promising because it allows eliminate some
ghosts. Amount of eliminated ghosts depends on sensors and object position. Even if not all
ghosts are eliminated it can helps for estimation proper positions of targets using other
algorithms.
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
101
Constraints oriented deghosting methods uses typically knowledge about allowed position,
maximal or minimal velocity, maximal acceleration, direction of movements and others
(Mazurek, 2007). If it is possible all constraints can be used together for best performance.
2.3 Counting and accumulative strategies
For classical methods for every target position (true or ghost) constraints using is
straightforward even if constraints tests are performed for every scan separately. Much
more reliable is extensive tracking where ghosts are tracked and constraints are used for
marking them as ghosts if they forbid constraints limit.
Because TBD algorithms are signal accumulation oriented algorithms they do not consider
LOS crossing as sum of number of crosses but they accumulate signals for particular state
space cell where crossing occurs. It following example is assumed availability of two targets
and three sensors. Signal values registered by sensors for targets are Pl=l and P2=0.5 equal.
True targets are located in Tl and T4 positions. It is worth to be noted that all noises are
omitted so this is very comfortable for any algorithm case.
S1 S2 S1 S2
Fig. 5. Counting strategy (left) and accumulative strategy (right) for two targets and three
LOS cross point
LOS value
Counting strategy
LOS value
Accumulative strategy
Tl
2
1.5
T2
2
1.5
T3
3
3
T4
3
1.5
T5
2
1.5
T6
2
1.5
T7
2
1.5
T8
2
1.5
Table 1. LOS values for Fig.5
102
Automation and Robotics
This example shows how counting and accumulative strategy algorithms differ. For
counting strategy maximal values corresponding to most probable position of targets and
three sensors help to solve ghosting problem if we know maximal number of targets.
Accumulative strategy fails because T4 value is equal to ghosts' values and only one target
(T3) is detected as a true target. Even knowledge about number of targets can not help to
solve this simple example.
Only one way for improving accumulative strategy is increasing number of sensors and in
next example is assumed four sensors availability (Fig.6).
S1 S2
Fig. 6. Improving accumulative strategy using additional sensor
LOS cross point
LOS value
Counting strategy
LOS value
Accumulative strategy
Tl
2
1.5
T2
2
1.5
T3
4
4
T4
4
2
T5
2
1.5
T6
2
1.5
T7
2
1.5
T8
2
1.5
T9
2
1.5
T10
2
1.5
Til
2
1.5
T12
2
1.5
T13
2
1.5
T14
2
1.5
Table 2. LOS values for Fig.6
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
103
Counting methods gives correct results and maximal values correspond to true targets.
Accumulative methods give two largest values corresponding to true targets but T4 cross
point has only 50% higher value over ghosts. Counting strategy work better but it needs
detection of correct LOS so if SNR>1 it is recommended to use. Accumulative strategy
inherently available in TBD algorithms can be used also and it will be discussed in next
examples.
2.4 Accumulative strategy examples
Examples of results for noiseless and noised measurements space will be shown. For
simplification instead of projective cameras are used orthographic cameras. First example
shows how number of sensors improves results for accumulative strategy. Selected part of
state space is shown and some ghosts are outside image.
For two target Tl=1.0 and T2=0.5 the 3x3 matrix values filled by target value and filtered by
3x3 low pass filter (all values of filter are equal) so small size blurred targets are available.
Values for every case are normalized separately. Black value is zero level and white
corresponds to maximal value.
2 sensors
(0, 20 deg)
3 sensors
(0, 20, 40 deg)
4 sensors
(0, 20, 40, 60 deg
j
Ik
/
Original position of targets
5 sensors 6 sensors
(0, 20, 40, 60, 80 deg) (0, 20, 40, 60, 80, 100 deg)
Fig. 7. Measurement spaces for two targets and variable number of sensors
For two sensors ghosting effect is well visible and there is one large value (true target), two
medium values (ghosts) and one small (true target). Increasing number of sensors improves
value for true targets and reduces values of ghosts. A lot of LOS is sources of many lines.
104
Automation and Robotics
Shape of target blob and ghosts depends on sensors placement and number of them. If small
number of sensors is used and they are close together targets blobs are elliptical. If sensors
are much more dispersed blobs are more circular and better recognized.
In next example five true targets are placed in this space and they have following values:
Tl=1.0 (bottom); T2=0.8; T3=0.6; T4=0.2 and T5=0.4 (upper). The order of values T4 and T5
is intentional for reducing human related adaptive effects of results observation for image
blobs series.
2 sensors
(0, 20 deg)
3 sensors
(0, 20, 40 deg)
4 sensors
(0, 20, 40, 60 deg)
i
'i
/
Original position of targets
5 sensors 6 sensors
(0, 20, 40, 60, 80 deg) (0, 20, 40, 60, 80, 100 deg)
Fig. 8. Measurement spaces for five targets and variable number of sensors
For two sensors a lot of ghosts are and some of them are outside image and it is not possible
to find solution. Different values of targets are mixed and generate a lot of different ghosts'
values.
Sensor 40 gives well visible thick line that occurs if targets are collinear (it is well visible in
examples for 3 and more sensors). Increasing number of sensors positioned at other angles
reduce this effect. In subfigures 4 and 5 is a visible strength blob below target number T2
that shows sensitivity of this strategy  a lot LOS can accumulate in bad conditioned case
and ghost appear.
Dim target T4 is visually recognized when there are 5 sensors because humans expect
position in proper place but from computation point of view there are also a lot similar
value blobs (ghosts). Increasing number sensors improves results for dim targets but it is
worth to be noted that problem of detection is also related to collinear placement of targets.
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
105
Accumulative strategy work well if there is similar values of targets but in real applications
it can not be guaranteed especially if there is measurement noise.
In next example noises is added. There can be two sources of noise. The first one is
measurement noise like Gaussian noise that is sources of giant amount of visible parallel
lines in figures (Fig.9). The second one is related to observation space of additional objects
that is projected onto all sensors and in this chapter is omitted.
2 sensors
(0,20de g ;
3 sensors
(0, 20, 40 deg)
4 sensors
(0, 20, 40, 60 deg)
Original position of targets
5 sensors 6 sensors
(0, 20, 40, 60, 80 deg) (0, 20, 40, 60, 80, 100 deg)
Fig. 9. Measurement spaces for five targets and variable number of sensors. Noise is added
to measurements
It is interesting to compare this and previous example. For 5 sensors only three targets are
visible for human. Targets T4 and T5 are missing in noise and as is expected due to
accumulation from different direction increasing number of sensors helps to find such
targets. For 6 sensors target T5 is visible but dim target T4 is still missing.
Noise effects can be reduced by multiple measurements what is a kind of the simplest TBD
algorithm. If targets are not moving measurements averaging reduce noise and increase
SNR. This is well known noise reduction techniques that can be approved for tracking. This
technique correspondence to FIR based TBD. Class of TBD algorithms can be derived from
this technique if set of motion vectors is incorporated for averaging. Advantages of
averaging for statically placed targets and sensors are shown in next example. This method
reduces noise and suppresses values of ghosts also (Fig.10).
106
Automation and Robotics
For single measurements noises gives a lot of noise in LOS and crossing them gives ghosts.
Averaging stabilizes values for cross measurement cells and it is especially visible as lower
values for every LOS line between two neighborhoods cross points (ghosts).
Mr '^^E
Single space
2 averages of spaces
4 averages of spaces
8 averages of spaces
16 averages of spaces
Original position of targets
Fig. 10. Measurement spaces for five targets and variable number of averaging. Noise is
added to measurements
Averaging of measurements can be used for improving signal quality and two methods
should be considered in real applications. The first one is a sensor related averaging by
registration time extending and the second one method is numerical averaging based. For
real applications both should be considered because TBD algorithms are very good but
work much better if signal strength as high as possible. Tracking effort and requirements for
additional ghosts suppression algorithms can be reduced by proper designed system.
Optical sensor noises can be greatly reduced by cooling and careful analog frontend design
what is non trivial for dim targets signal acquisition.
It is worth to be noted that averaging technique can be implemented by parallel sensors. It is
interesting method because extending registration time can not be used at any cost. If
registration time is long time resolution is usually reduced also. For proper tracking of
maneuvering targets and high frame rates linear approximation of movement can be used.
Additionally long registration time is not correct for today available sensors because signal
accumulated in one sensor cell (pixel) influent on values of neighborhoods pixels.
An additionally parallel sensor averaging is important for dim targets because sensors can
be bombarded by high energy particles from space and register very high values for some
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
107
frames. Using signal processing filters like median filters high values can be detected and
removed before averaging and significantly improving overall acquisition process, because
TBD algorithms are accumulation oriented.
3. TrackBeforeDetect algorithms
Two recursive algorithms can be used as examples of TBD algorithms. Spatiotemporal TBD
based on fading memory (exponential smoothing) and simplified version of LLR TBD (Stone
et al., 1999). Main difference is that LLR TBD use strict Bayesian approach and spatio
temporal not, but both have similar algorithm structure and they have similar behaviors in a
case of ghosting. Spatiotemporal TBD with exponential smoothing can be written as a
following pseudoalgorithm:
Start
P(k = 0,s) = //Initial value (la)
For k > 1 and s e S
P(k,s) = y k (s\s k _ 1 )P(kl,s
P(k,s) = aP(k,s) + (la)X k
ki)ds k _i //Motion update (lb)
/ / Information update (lc)
EndFor
End
S
 state space (2D position and motion vectors Vx , Vy in this chapter),
s  state (spatial and velocity components in this chapter),
k  step number or time moment,
a  smoothing coefficient a e (0,1) ,
X k  measurements (input image),
P(k,s)  estimated value of targets,
q k (s  s k _i )  state transitions (Markov matrix).
Simplified LLR TBD can be written as a following pseudoalgorithm:
Start
p(k = 0,s)
A(k = 0,s)
For k > 1 and s eS
for seS
A {k,s) = \q k (s\s k _ 1 )K(kl,s k _ 1 )ds k _
A(k,s) = L k (y k \s)A(k,s)
//Initial likelihood ratio (2a)
/ / Motion update (2b)
//Information update (2c)
EndFor
End
A(k,s)
A~(k,s)
L k(¥k\>
Vk
 likelihood ratio (LLR),
 motion update likelihood ratio,
 measurement likelihood, usually calculated using target signal model,
 measurement.
108
Automation and Robotics
It is worth to be noted that LLR TBD is very attractive from computational point of view
because logarithmic implementation allows reduce number of computation and is very
useful in analytical analysis (Stone et al., 1999). Initial likelihood ratio value can be fixed
value.
As was mentioned state space in this chapter correspond to measurement space. It allows
simplifying analysis and testing TBD algorithms in convenient way. State space is divided
on to set of subspaces. Every subspace correspond to measurement space in represents
objects positions for specific motion vector and number of subspaces is dependent on
number of different velocities and movement directions.
Unidirectional graph show in Fig.ll describes possible target movements  velocity and
direction. This graph can be position dependent but in this chapter is assumed as a fixed.
AVy
Vx=2
Vy=+2
Vx=1
Vy=+2
Vx=2
Vy=+1
Vx=1
Vy=+1
Vx=2
Vy=0
Vx=1
Vy=0
Vx=2
Vy=1
Vx=1
Vy=1
Vx=2
Vy=2
Vx=1
Vy=2
Vx=0
Vy=+2
Vx=+1
Vy=+2

Vx=0
Vy=+1
Vx=+1
Vy=+1
Vx=0
Vy=0
Vx=+1
Vy=0
!
Vx=0
Vy=1
Vx=+1
Vy=1
»
Vx=0
Vy=2
Vx=+1
Vy=2
Vx=+2
Vy=+2
Vx=+2
Vy=+1
Vx=+2
Vy=0
Vx=+2
Vy=1
Vx=+2
Vy=2
Vx
Fig. 11. Motion vectors (left) and corresponding subspaces of TBD algorithm (right)
For assumed motion graph Markov matrix can be prepared directly or implemented in
another computational efficient way but there is other important application of motion
vectors. Due to high dimensionality visualization of results is complicated especially if after
TBD processing there is not available another data fusion algorithm. Joint space can be used
but for multiple targets and different directions and velocities only position of targets is
visible. The second one visualization method (Mazurek, 2007) is based on placement of
multiple subspaces corresponding to motion vector like in Fig. 11 for selected time moment.
Central position (looped vector in Fig.ll) is very similar to averaging of input measurement
(Fig.10) but is not exact average, because there are Markov transitions from other motion
vector states and from this state to others.
4. Ghost suppression and TrackBeforeDetect Algorithms
4.1 Ghost suppression by accumulative strategy
In following example results for spatiotemporal algorithm for two moving targets
and a  0.95 are shown. There are 21 motion vectors and 6 sensors. The first one target starts
from leftdown area and has assigned Vx=+1, Vy=+1 motion vector. The second one target
start from rightup area and has assigned Vx=1, Vy=1 motion vector. Target trajectories
crosses own trajectories.
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
109
Measurement space for time moment k=20 Measurement space for time moment k=60
without noises without noises
NO****
rflH^
is*?
hrf'frrijqrtf
.TpjT.
'_^Vtaru^' r ■ tm ■ ■
*£ r :+':"'T :ir h '"
Measurement space for time moment k=20 Measurement space for time moment k=60
with noises with noises
TBD state space for time moment k=60
with noises and motion analysis
TBD state space for time moment k=20
with noises and motion analysis
Fig. 12. State spaces for two time moments
Noiseless input measurements show well visible positions of targets but due to noise in
input measurements such parameters like positions and number of targets or ghosts are not
possible to estimate. Comparing measurement spaces with and without noise shows how it
is hard to find targets and classical threshold based algorithms are useless for detection.
Targets separated by TBD algorithms motion vectors are the largest values in state spaces
for Vx=+l,Vy=+l and Vx=l,Vy=l subspaces (Fig.13). Due to averaging of multiple sensors
measurements ghosts are almost at LOS levels.
110
Automation and Robotics
Vx=l,Vy=l Vx=+l,Vy=+l
Fig. 13. Enlarged selected subspaces for time moment k=60
The Markov matrix describe dispersion of values from particular subspace to
neighborhoods subspaces that is necessary for tracking if target changes own motion vector
or if target motion vectors is not well fitted to motion vectors defined by motion graph so
additional blobs in neighborhoods subspaces surrounding largest one. Using average of all
subspaces it is possible obtaining joint space without motion vectors but it is not
recommended for good trackers because motion should use for better separating crossing
targets.
4.2 Ghost suppression by additional dimension measurements
It was mentioned very interesting behavior of angular sensors that are very sensitive in ID
measurement (2D observation space) and always generate ghosts (Fig.4). In the case of 2D
measurements (3D observation space) and proper position of sensors in relation to targets
separation (Fig.3) can be obtained. Such forced separation reduces number of ghosts or even
completely eliminate them if targets and sensors are not coplanar. In real applications
should be considered such technique for example instead of two linear (ID) IR sensitive
sensors in marine surveillance two 2D sensors properly placed can help if one of them is at
some high over sea surface (e.g. aircraft). This example shows how cooperative
measurements and data fusion from many and distance sensors can solve unsolvable
problems. This technique can be used in TBD but direct implementation increases
computation cost significantly. TBD algorithms for 3D space can be used in two ways:
 Full processing 3D space by TBD needs state space for position only as 3D so even for
small state space cost is huge. For example if 2D measurement space has 100x100 cells and
full 3D tracking is assumed state space for position has 100x100x100 cells for two orthogonal
sensors. Number of computations increases additionally because not only spatial
component is much larger but also movement direction (velocity component) increases and
amount of computations is gigantic (Barniv, 1990). In near future using optical or electro
optical processing tracking in realtime for such spaces will be possible or it is already
possible in today available secret military trackers because optical technology is well suited
for TBD algorithms. Unfortunately research papers related to available military applications
of TBD are not available.
 Partial TBD processing where only 2D image frames are processed by TBD algorithms for
every sensor separately. After targets detection classical assignment or other ghost
elimination algorithms are used. This method is very useful because number of computation
is exactly proportional to number of sensors.
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
111
4.3 Ghost suppression by using positions constraints
This technique is very popular because possible spatial position of targets can be simple
measured and used as constraint for reducing number of ghosts. For example as shown in
Fig. 14 three targets (Tl, T7, T14) should be a ghosts because they are outside of area where
targets are.
S1 S2
Fig. 14. Ghost suppression by using positions constraints
4.4 Ghost suppression by using proper placement of sensors
This technique is very useful but is not well emphasized in literature and usually it is
assumed no target area constraints. Such assumption is important in some cases but if there
is possibility of control measurement scenario by experiment planning knowledge about
possible trajectories allows finding much better position of sensors and reduce or even
eliminate ghosts (Fig.15).
Fig. 15. Two examples same targets positions in area
In left figure bad sensor placement and in right figure solution are shown. For know target
are there is possible place ghosts outside area of interest. Proper placement is very
interesting from application and research point of view. Using optimization techniques
before measurements ghost elimination can be obtained. For simple cases optimization is
even not required and geometrical analysis can be used.
112
Automation and Robotics
4.5 Ghost suppression by using velocity constraints
Very often mentioned in literature are velocity constraints for ghost detection. Usually is
emphasized case where projective sensors are used and for two sensors and targets one of
the ghosts has much higher velocity in measurement space.
In following example will be show results for two targets and two sensors that can not be
solved in general case. Assuming knowledge about targets velocities and movement
direction motion graph gives reduced Markov matrix and reduced number of subspaces
because some state transitions are forbidden. Due to orientation of sensors or direction of
movements of targets the fist one ghost has highest velocity and second one has zero
velocity.
Measurement space for time moment k=20
without noises
Measurement space for time moment k=60
without noises
iilH
TBD state space for time moment k=20
without noises and with motion analysis
TBD state space for time moment k=60
without noises and with motion analysis
Fig. 16. Selected state spaces for two time moment
Usually velocity constraints are recognized in literature as a maximal velocity limitation, but
as shown in this example (Fig. 16) minimal velocity can be used for ghost suppression also.
Without TBD motion analysis ghosts' elimination is not possible but only one ghost is
eliminated (Fig. 16). The first one ghost has similar values to target (Fig. 17).
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
113
Vx=l,Vy=+l (ghost) Vx=l,Vy=0 (true target)
Fig. 17. Zoom of motion separated targets for time moment k=20
4.6 Ghost suppression by using motion direction constraints
This technique allows reducing values for ghosts if they are not moving in proper direction.
If there is knowledge available about object trajectory even for small number of sensors like
two for two targets can be used. In following noiseless example there are motion vectors
(Vx > and Vy > 0) and (Vx < 0, Vy < 0) allowed for targets (the first one starts from leftup
corner and move towards to rightdown corner and the second one use opposite direction).
Measurement space for time moment k=20
without noises
Measurement space for time moment k=60
without noises
TBD state space for time moment k=
with motion analysis
20
TBD state space for time moment k=60
with motion analysis
Fig. 18. Selected state spaces for two time moment
114
Automation and Robotics
As show in Fig. 18 there are two ghosts in measurement spaces and they have similar values
in comparison to the true targets.
Vx=0,Vy=+l (left blob is a weak ghost) Vx=+l,Vy=+l (true target)
Fig. 19. Zoom of motion separated targets for time moment k=60
Ghost values are suppressed (Fig.19) but results depend on number and configuration of
sensors and targets trajectories.
There is additional advantages of this and previous method because TBD algorithms need a
lot of computation and subspaces reduction decrease computation cost.
4.7 Ghost suppression by increasing angular resolution
Not only coplanar targets and sensors position is source of ghost effect. Angular
measurements are sensitive for noises that influent on position measurements even for
single target. There almost always errors and ideal triangulation is not possible so two LOS
are not crossed in single point for 3D space. Triangulation algorithm estimate (Hartley &
Sturm, 1997) target position by minimal distance search between two or more LOS, so
approximated position of target P E is obtained.
Fig. 20. Triangulation error in 3D observation space
If there are more targets and some of them are closely spaced measurement errors are source
of ghosts depending on sensor resolution and measurement noise. Classical track
maintenance algorithms can reduce such effect but improving sensor resolution can reduce
noise and separate closely located targets also. Optical sensors have resolution dependent
on number of optical elements (sensor pixels) and field of view (FOV). Using variable focal
length controlled by tracking algorithm is very interesting for improving angular resolution
performance.
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
115
Spatial errors that induce ghost effect can be reduced by proper placement of sensors.
Uncertainly of target position can be modeled as a cone from focal point of sensors. If
distance between sensor and target is small position errors are smaller also and ghosts
occurrence is less probable. Tracking distant target using bearing only sensors is always
challenging.
4.8 Ghost suppression by using additional attributes of targets
This idea uses diversification measurements and allows extend measurement space. For
example instead simple IR measurements can be used: two wavelengths for IR
measurements, IR and visible light wavelengths, or color light (RGB) measurements.
Good multispectral approach can improves separation between targets significantly and if
targets are separated ghosts effect does not occur or is reduced.
The first one technique that use additional attributes uses them directly inside TBD
processing.
TBD:
Spatial positions
Motion
Attributes
measurements
! ■
output
subspaces
Fig. 21. Additional attributes TBD  combined processing
The second one technique where additional attributes can reduce ghost effect is
implementation divideandconquer approach using set of filter fitted to attributes for
extraction important signal from measurement.
Attribute
Filter (1)
— ►
TBD (1):
!►
Spatial positions
Motion
;
measurements
Attribute
Filter (2)
— ►
TBD (2):
Spatial positions
Motion
j
^
i
•
•
«
i
•
•
•
►
Attribute
Filter (N)
— ►
TBD (N):
Spatial positions
Motion
<
W
output
subspaces
(set 1 )
output
subspaces
(set 2)
output
subspaces
(set N)
Fig. 22. Additional attributes TBD  separate processing
116
Automation and Robotics
Attribute based TBD algorithms are very interesting research area because this approach
greatly improves tracking and can be used for many practical systems.
In this chapter is considered example of separate processing TBD for tracking colored
targets. In this case measurement space is greatly extended because for every measurement
cells (pixels) is available more then one value representing spectral data like three R, G and
B components. This method is general approach and has very efficient parallel
implementation. Unfortunately separate processing does not have ability of using
information between spectral components and if target color evolves in time obtained
measurements in some channel can not be used by another directly by TBD algorithm. For
such situation combined processing TBD approach can be used or additional data fusion
algorithms for tracks maintenance are necessary.
Assuming constant color for every target and Gaussian noise filters can be designed using
geometric properties of color space. It is assumed typical RGB color space where all color
components are orthogonal so point target (pixel size) is a vector in such space and noise
can be represented as 3cr radius sphere like in Fig.23 and noise is additive for target signal.
BA
Si,
Signal (S) Noise (n) Signal + noise (S+n)
Fig. 23. Single pixel vector representation
In Fig.23 is shown blue color only target and if target color is any but known, transformation
using rotation matrix is necessary and signal vector should be parallel to the one of the
space vectors (X,Y,Z) for example parallel to the X (Fig.24).
«11
a 12
a 13
r
fl 2 i
a 22
a 2?>
8
«31
a ?>2
%3 _
b
(3)
Because only one space vector X is important previous formula can be rewritten to more
compact and useful form:
W=[<
a n a 12
013]
nk s g s b\
sn r
sn g
sn b
(4)
where sn is any signal plus noise and s is expected signal without noise. Such formula can be
simple extended to any multispectral case if color space is orthogonal.
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms
117
Bi
i
Bn
B t '
r
^G
S
\^ X \^G
\ (
^ 7Sp
/
R
/
R
V
z
Sign
al(S)
Signal + noise (S+n)
Signal + noise (S+n)
and new XYZ space
Fig. 24. Single pixel vector representation
Three noised targets are for following example: red (1,0,0), yellow (0.707, 0.707, 0) and green
(0,1,0) and three s vectors are used for separation for three measurement spaces. Values for
targets are intentionally selected because length of all target vectors is equal so all of them
have equal strength.
RGB measurement
(B is false noiseless color)
Red measurement
Green measurement
Fig. 25. Input signal for time moment k=60
Blue subspaces are omitted in TBD process because blue component is orthogonal to
noiseless target signals. There is only noise in blue color component of RGB space and for
separate processing strategy this component is not important.
Full or partial separation between color components is not only related to the targets but
LOS also and cross points values are also reduced. Red target use Vx=0, Vy=+1; yellow
target use Vx=+1, Vy=+1; green target use Vx=~l, Vy=1 motion vector.
Without multispectral approach a lot of ghosts should be visible. Separation helps for
eliminate ghosts or reduce them. Because yellow target consist component from red and
green components there are some signals from this target in both components. Red and
green components of target are visible in yellow component also. Crosstalk between
nonorthogonal components is a result of simple method of separation but obtained results
shows that ghost are weak.
118
Automation and Robotics
Vx=0, Vy=+1
Bright red target
Vx=+1, Vy=+1
Right bright blob is
yellow target
Red subspaces for time moment k=60
Vx=0, Vy=0
Red target and small ghost bellow
Vx=1, Vy=+2
Small yellow ghost (leftup corner)
Yellow subspaces for time moment k=60
Vx=0, Vy=+1
Visible red target
Vx=+1, Vy=+1
Bright yellow target
Vx=1, Vy=+2
Small green ghost (leftup corner)
Vx=1, Vy=1
Bright green target
Green subspaces for time moment k=60
Fig. 26. Three subspaces and selected enlarged subspaces
Vx=+1, Vy=+1
Yellow target is visible
Deghosting Methods for TrackBeforeDetect Multitarget Multisensor Algorithms 119
5. Conclusions
Ghosts are phenomenon that occurs for bearing only sensors and many methods can be
used for elimination or reduction them. For accumulative algorithms like considered group
of TBD are presented and discussed possible solution.
Comparing discussed deghosting methods is not possible because every method uses
another approach and different knowledge about targets. For specific case one method can
be better in comparison to others but can fail in another case and all of them should be used
carefully. In this chapter are proposed deghosting methods using TBD algorithms directly
without additional postprocessing and some of them are used in classical deghosting
algorithms.
This approach based on deghosting in TDB algorithms together with main tracking purpose
is correct but serious developer should consider other methods also as an additional
improvement of systems or even if necessary as replacement for considered in this chapter
methods. Ghosting is very serious problem for serious applications. Using suggested
method of state space implementation allows design and test systems. Decomposition of 4D
state space allows visualize results of TBD for human also. Very popular Monte Carlo based
tests for determine system quality is good idea also but it should be used carefully.
Extension of deghosting directly in TBD algorithms is possible but there a lot of interesting
question for future researches, for example influence of projective measurements on ghosts
because measurement space is not rectangular and approximation is necessary.
Measurement likelihood has knowledge about sensor properties and also influent on ghost
values and real sensors needs good description of this function additionally so there is
question about this influence on ghosts.
6. Acknowledgments
This work is supported by the MNiSW grant N514 004 32/0434 (Poland)
7. References
Arulampalam, M. S.; Maskell, S.; Gordon, N. & Clapp, T. (2002). A Tutorial on Particle
Filters for Online Nonlinear/ NonGaussian Bayesian Tracking, IEEE Transactions
on Signal Processing, Vol. 50, No.2, February 2002 pp.174188, ISSN 1053587X
BarShalom, Y. & Fortmann, T.E. (1988). Tracking and Data Association, Academic Press, ISBN
9780120797608
BarShalom, Y. (ed.) (1990). MultitargetMultisensor Tracking: Advanced Applications, Artech
House, ISBN 089006377X, Boston, London
BarShalom, Y. (ed.) (1992), MultitargetMultisensor Tracking: Applications and Advances Vol. II,
Artech House, ISBN 0890065179, Boston, London
BarShalom, Y. & Li, XR. (1993). Estimation and Tracking: Principles, Techniques, and Software,
Artech House, ISBN 0890066434, Norwood
BarShalom, Y. & Li, XR. (1995). MultitargetMultisensor Tracking: Principles and Techniques,
YBS, ISBN 0964831201
BarShalom, Y. & Blair, W. D. (eds.) (2000), MultitargetMultisensor Tracking: Applications and
Advances Vol. Ill, Artech House, ISBN 1580530915, Boston, London
120 Automation and Robotics
Barniv, Y. (1990). Dynamic Programming Algorithm for Detecting Dim Moving Targets, In:
BarShalom, Y. (ed.) (1992), MultitargetMultisensor Tracking: Applications and
Advances Vol II, Artech House, ISBN 0890065179, Boston, London
Blackman, S. S. (1986). MultipleTarget Tracking with Radar Applications, Artech House, ISBN
9780890061794
Blackman, S. S. & Popoli, R. (1999). Design and Analysis of Modern Tracking Systems, Artech
House, ISBN 1580530060, Boston, London
Brookner, E. (1998). Tracking and Kalman filtering made easy, WileyInterscience, ISBN 0471
184071, NewYork
Doucet, A.; Freitas, N. & Gordon, N. (eds.) (2001), Sequential Monte Carlo Methods in Practice,
Springer , ISBN 9780387951461
Gordon, N. J.; Salmond, D. J. & Smith, A. F. M. (1993). Novel approach to nonlinear/ non
Gaussian Bayesian state estimator, IEE ProceedingsF, Vol. 140, No. 2, April 1993, pp
107113, ISSN 0956375X
Hartley, R. I. & Sturm, P. (1997). Triangulation, Computer Vision and Image Understanding,
Vol. 60, No. 2, November 1997, pp 146157, ISSN 10773142
Mazurek, P. (2007). Deghosting Methods for Likelihood Ratio TrackBef oreDetect
Algorithm, Proceedings of the 13th IEEE/IFAC International Conference on Methods and
Models in Automation and Robotics  MMAR'2007, Szczecin, pp 12271232, ISBN 978
8375180336
Pattipati, K. R.; Deb, S.; BarShalom, Y. & Washburn, R. B. (1992). A New Relaxation
Algorithm and Passive Sensor Data Association. IEEE Transaction on Automatic
Control, Vol. 37, No. 2, February 1992 pp. 198213, ISSN 00189286
Ristic, B.; Arulampalam, S. & Gordon, N. (2004). Beyond the Kalman Filter. Particle Filters for
Tracking Applications, Artech House, ISBN 1 58053631 X, Boston, London
Stone, L. D.; Barlow, C. A. & Corwin, T. L. (1999). Bayesian Multiple Target Tracking, Artech
House, ISBN 1580530249, Boston, London
Identification of Dynamic Systems & Selection
of Suitable Model
Mohsin Jamil, Dr. Suleiman M Sharkh and Babar Hussain
School of Engineering Sciences, University of Southampton
England
1. Introduction
Process Industry is growing very rapidly. To tackle this fast growth, current control
methods need to be replaced to produce product with compatible quality & price. Normally
the systems are described by suitable mathematical models. These models are replaced by
actual process later on. Actually controllers are designed on behalf of suitable models to
control the process effectively. So suitable models are very crucial. Different purposes
demand for different types of models where the objective could be: (Bjorn Sohlberg, 2005)
• Construction of controllers to control the process.
• Simulation of control system to analyze the effect of changing reference
• Simulate the behaviour of system during different production situations.
• Supervise different parts of process which properties change due subjected to wear or
changing product quality.
The exact model of any system will reflect detailed description. A simple feedback controller
demands a simple process description than a process description which is going to be used
for supervision of wear. Often a more advanced application, demand for a more complex
model. The relation between the purpose of the model and its complexity is shown below.
Feedback Feedforward Process Process
Control Control Simulation Supervision
>
Model Complexity
Fig. 1. Model Complexity
The development of information technology has opened new prospective in modelling and
simulation of processes used in different scientific applications. There are different types of
models which will be discussed in next section. In this chapter we will discuss different
types of models, Identification techniques using matlab identification toolbox & different
examples. Several aspects on experimental design for identification purposes will be also
discussed. In a nutshell this chapter will be useful especially for those who want to do linear
black box identification. For any given system/ process modelling & identification
techniques would be useful to apply after proper understanding of this chapter.
122 Automation and Robotics
1.1 Types of models
To describe a process or a system we need a model of system. This is nothing new, since we
use models daily, without paying this any thoughts. For example, when we drive a car and
approaching a road bump, we slow down because we fell intuitively that when this speed is
too high we will hit the head in the roof. So from experiences we have developed a model of
car driving. We have a feeling of how the car will behave when reach the bump and how we
will be affected. Here the model of situation can be considered as a mental model. We can
also describe the model by linguistic terms. For example if we drive the car faster than
HOkm/h then we will hit the head at the roof. This is linguistic model, since the model uses
words to describe what happens. (Bjorn Sohlberg, 2005)
A third way of describing the systems is to use scientific relations to make a mathematical
model , which describes in what way output signals respond due to changes in input signal.
There are different types of models to represent the systems.
1. White Box Modelling: When a model is developed by modelling, we mean that model
is constructed completely from mathematical scientific relations, such as differential
equations, difference equations, algebraic equations and logical relations. The resulting
model is called white box or a simulation model.
Example: For example a model of electrical network using Kirchhoffs laws and similar
theorems:
u(t)
y(t)
Fig. 2. RC Circuit
In above RCcircuit where the relation between the input signal u(t) and output signal
y(t) is given by Ohm's law. The resulting model would be a linear differential equation
with the unknown parameter M=RC, which can be estimated form an experiment with
the circuit or formal nominal values of the resistor and the capacitor. A mathematical
model is given by:
M.i,(t) + y(t) = u(t) (1)
Similarly other processes can be modelled using scientific relations.
2. Black Box Modelling: When a model is formed by means of identification, we consider
the process completely unknown. The process is considered black box with inputs and
outputs. Thus it is not necessary to use any particular model structure which reflects the
physical characteristics of the system. Normally we use a model which given from a
group of standard models. Unknown model parameters are estimated by using
measurement data which is achieved from an experiment with the process. In this way
model shows inputoutput relation.
Identification of Dynamic Systems & Selection of Suitable Model
123
Identification using black box models have been used for industrial, economic,
ecological and social systems. Within industry, black box models have been used for
adaptive control purposes.
Example: Consider a standard model given by equation 2.The process consists of one
input signal u(k) and one output signal y(k).Here there two unknown parameters a and
b. These parameters are estimated using identification from measured data of process.
y(k) + a.y(k  1) = b.u(k  1)
(2)
We want the model output to look like the process output as good as possible. The
difference between the process and model outputs, the error e (t) will be a measure to
minimise to find the values of the parameters that is a and b.
Fig. 3. Black Box Identification
3. Grey Box Modelling: For many processes there is some but incomplete knowledge
about the process. The amount of knowledge varies from one process to another.
Between the white box and black box models there is grey zone.
Type of Model
Application Area
Black Box Models
Process Control
Grey Box Models
Economical Systems, Hydrological Systems
White Box Models
Electronic Circuits
Table. 1. Grey Box Models
The other two common terms in modelling are deterministic and stochastic models.
In
deterministic models we neglect the influence of disturbance. It is not realistic to make a
perfect deterministic model of a real system. The model would be too expensive to develop
and would probably be too complex to use. Therefore it is good idea to divide the model
into two parts; one deterministic part and one stochastic.
2. Linear black box identification
Black box identification deals with identification of a system using linear models from a
family of standard models. The tentative black box model consists of unknown parameters,
needed to be estimated from measured data. Some linear models are ARX, ARMAX and
124 Automation and Robotics
similar types of other models. Prerequisite for black box identification is measured data,
which are achieved from an experiment with the system. Experimental design will be
discussed in next section. During the identification of the model procedure, we normally let
three models ARX, ARMAX and OUTPUTERROR to find the best model.
2.1 ARX models:
The most common black box model identification is named as ARXmodel (Bjorn Sohlberg,
2005). ARX stands for auto regression exogenous. By using the shift operator q" 1 , the model
is reformulated in the following form:
A(q 1 )y(k)=B(q 1 )u(k)+e(k) (3)
The following polynomials Ayqj and B(q~ 1 ) are given by equations (4) and (5), where na
and nb are positive number which define the order of the polynomials.
Aiq 1 ) = 1 + a.q 1 + + a na q" a (4)
B(q 1 ) = b iq ~ 1 + + b nb q~ nb (5)
Observations while using ARA Model:
• Easy to use
• Models the disturbance as an regression process (output is nonwhite even when
input=0)
• Better disturbance models than that in OutputError
• Poles of the dynamic model and poles of the disturbance model coincide; as a result,
modelling is not very flexible.
2.2 ARMAX model:
The model given by equations (6) can be augmented to include a model of the disturbance.
ARMAX stands for auto regression moving average exogenous model. Mathematically, this
can be introducing a polynomial C(q~ l ) :
A( q  1 ) V (k) = B(q 1 )u(k) + C(q 1 )e(k) (6)
A(q 1 ) = l + a 1 c, 1 + + a na q (7)
B(q 1 ) = b 1 q~' + + b nb q" b (8)
C(q 1 ) = l + c 1 q'+ + cjT (9)
Observations while using ARMAX Model:
• More complex than ARX model
• Poles of dynamic model and disturbance model are same, as in ARX, but provides extra
flexibility with an MA model of disturbance
Identification of Dynamic Systems & Selection of Suitable Model
125
2.3. OutputError model
When the disturbances mainly influence the measurements of the output signal, the general
model can be transformed to the output error model:
F(q')y(k) = B(ci 1 )u(k) + e(k)
The simulation and use of these models will be shown in case study section.
(10)
3. Parameter estimation
There are different estimators available. To estimate the parameters one should keep
following in the mind:
• The model is never an exact representation of the system
• Undesirable noise always contaminates the measured data
• The system itself may contain sources of disturbance
• Error between the measured output(s) and the model output(s) is unavoidable
• A good identification is one that minimizes this error
u
System
y>
under test
*
_
Model
■J
— +0
t
/
Fig. 4. Difference between the process and model output
3.1 Least squares estimation
Parameter estimation using lease minimization is an early applied method to estimate
unknown parameters in mathematical models. The theory was developed in the beginning
of 1800 century by Gauss and Legendre. The parameters are estimated such that the sum of
the squares of errors is minimized. For an error vector [e] Nxi, the LSE minimizes the
following sum
V
1 N
Ntf
1 T
— e e
N
(11)
This sum is also known as the Loss Function. Next, we shall generalize the least squares
estimation problem for a system with any arbitrary relationship between input & output.
Relation exists between the response (dependent variable) of the system under test and
regressor (independent variables) via some function. This is represented by linear regression
model as:
y = f((p lf (p 2 ,...,(p v ;0) + v
(12)
The relationship is known except for the constants or coefficients 6 called parameters and a
possible disturbance v. The term cpi could be taken as regressor. An important special case
for the function f is linear regression based on the model:
126
Automation and Robotics
y = (p T 6 + v (13)
We will show its implementation in our research work later on.
In case of colour noise affecting the process we use pseudo least square method.
Example: Estimating the parameters of a 2nd order ARX model of the following order:
y(k) + a t y(k  1) = \u{k  1) + b 2 u(k  2) + e(k) (14)
Using matlab system identification toolbox we can do it in following way:
» z = iddaat(y u) % From measured data
» nn = [1 2 1] % Configure the order of the model
» m = arx (z, nn) % Estimate unknown parameters
» present (m) % Present values and accuracy of estimates.
4. Model analysis
After the model parameters have been estimated by using measured data, the model has to
be analysed. It is important to investigate the quality of model and how well the model is
adapted to measured data. By model analysis we will study in what way the model
describes the static and dynamic characteristics of the process. Further we will study if the
parameter estimates are reproducible. This is done by using two or more different
measurement sequences and comparing the estimates by each of them. It is also interesting
to calculate residual.
The value of the loss function is also used when we are going to choose between different
model candidates. Usually the model having lower loss function is preferred. Moreover we
check the frequency characteristics. Below is short summary of steps:
4.1 Simulation
The model is simulated using the inputs from the experiment and the outputs from the
model and process are plotted in the same diagram and study if the curves are about the
same. In short dynamics of the curves should be same and follow the same trajectory. A
systematic difference in the levels is possible to compensate by using regulator.
Example: Below is one example for simulation of model and real process. Both curves are
matched in this case.
zstimation with arx model [411]
Fig. 5. Simulation
Identification of Dynamic Systems & Selection of Suitable Model
127
4.2 Statistical analysis
There are several tests which can be used to study whether the residual sequence is white
noise. The most important are autocorrelation of the residuals, cross correlation between the
residuals. A simple and fast way to get an opinion about the residual is to make a plot in
time diagram. Trends in signal will get clear overview. In short we take care of following
points while doing statistical analysis.
• Autocorrelation
• Cross correlation
• Normal Distribution
• Residual Plot
4.3 Model structure analysis
When a model is constructed, it should describe the behaviour of the system as perfect as
possible. As a measure of perfectness of the model we can use the loss function, since a
better model will generate smaller residuals than a worse model. It is observed from
experiments that loss function will decrease with the in increase in number of parameters.
This means accuracy of estimated parameters will decrease.
4.4 Parameter analysis
If possible, the experiment is repeated so we will have two different measurements
sequences. The circumstances around the experiments should be as similar as possible.
During these conditions, we investigate whether it is possible to reproduce the same value
of the estimates.
The results from estimation can also be presented by a pole/ zero plots. We can find whether
the model is over determined and too many parameters are estimated. In case of
overlapping the two poles and zeros upon each other, the order of system should be
reduced.
Example: Pole Zero Diagram of system which is not over determined.
0.8
0.6
0.4
0.2
0.2
0.4
0.6
0.8
^^^
~^\.
/
^x
\
7
\
/
\
©
\
\

/ _
"^\__^
_^'
Fig. 6. Pole Zero Diagram
128 Automation and Robotics
4.5 Frequency analysis
The frequency analysis is a complement to the analysis in time space. It is used to give
information about whether the frequency relation between inputs and outputs is covered by
model.
The method gives possibility to investigate whether the model can describe the
characteristics of the process within a specific interesting frequency range. The frequency
plot based on an estimated model and spectrum from measured input/ output signals is
performed by using Matlab system identification tool box. This is shown in Fig. 16.
5. Model appraisal
During the model appraisal, the model is evaluated based on the purpose of model. This
model will be used in some way in feedback control, Feedforward control, model predictive
control supervision or failure detection. Following points could be useful during model
appraisal.
• When the model is going to be used for designing PIDcontrollers, then dynamical
properties are most important. This can be analysed by plotting the outputs from the
process and the model in same diagram. It is important that the model outputs should
follow the variations in the process outputs while it is not necessary that both are same.
• When the model is going to be used for simulation purposes, then statistical properties
of the model and process are important.
• When the model is going to be used for supervision of parameters within the process
which are not possible to measure by a transducer it is necessary to have a model which
contains white box parts.
6. Case study: active control of tall structure building
Considerable attention has been paid to active structural control research in recent years;
with particular emphasis on alleviation of wind and seismic response. There have been
numerous investigations, both analytical and experimental, into the area of passive
vibration control of tall buildings in previous decades. Passive vibration control devices
such as tuned mass dampers (TMD) have proven to be effective for certain applications but
they are limited in the magnitude of motion reduction they can achieve. These limitations
have led to the development of active control devices. This device uses a control algorithm
which analyses the dynamic structural feedback to create a control force which drives a
mass. The theory for active control has been extensively investigated for the past two
decades and it has been found to be a superior method of vibration control.
6.1 Background
In recent years, innovative means of enhancing structural functionality and safety against
natural and manmade hazards have been in various stages of research and development.
By and large, they can be grouped into three broad areas: (i) base isolation; (ii) passive
damping; and (iii) active control (Y. Fujino et al., 1996). Of the three, base isolation can now
be considered a more mature technology with wider applications as compared with the
other two. Implementation of passive energy dissipation systems, such as tuned mass
dampers (TMDs), to reduce vibration response of civil engineering structures started in the
Identification of Dynamic Systems & Selection of Suitable Model 129
U.S.A. in the 1970s and in Japan in the 1980s. In parallel, research and development of active
control progressed greatly during the 80' s in both the U.S.A. and Japan (R.J Facian et al.,
1995).
It has been shown in field studies that tall buildings that are subjected to wind induced
oscillations usually oscillate at the fundamental frequency of the building. In some cases this
is coupled with torsion motion, when the torsion and lateral oscillation frequencies are
close. One of the most common control schemes used to correct these oscillations is a TMD
system. Basically, TMD consists of a mass attached to a building, such that it oscillates at the
same frequency of the structure but with a phase shift. The mass is attached to the building
via a springdashpot system and the energy is dissipated by the dashpot as relative motion
develops between the mass and structure (R.J Facian et al., 1995).
In the mid 1960s it was studies by Banning and others that the dynamic characteristics of
sloshing liquid which eventually initiated the development of a series of natural dampers.
The rotation dampers have some unique advantages such as low cost ,easy installation and
adjustment of liquid frequency, and little maintenance etc. which are unmatched by the
traditional TMD system. The rotation dampers work by absorbing and dissipating energy
through the sloshing or oscillating mechanisms of liquid inside a container. Two of the
major devices developed in this category include the tuned liquid damper (TLD) and the
tuned liquid column damper (J.T.P.Yao, 1972). Both these devices provide excellent overview
in the development and application.
Dynamic loads that act on large civil structures can be classified into two main types:
environmental, such as wind, wave, and earth quake; and manmade, such as vehicular and
pedestrian traffic and those caused by reciprocating and rotating machineries. The response
of these structures to dynamic loads will depend on the intensity and duration of the
excitation, the structural system, and the ability of the structural system to dissipate the
excitations energy. The shape of the structure also has a significant effect on the loading and
resulting response from wind excitation. The advent of high strength, light and more
flexible construction materials has created a new generation of tall buildings. Due to the
smaller amount of damping provided by these modern structures, large deflection and
acceleration responses result when they are subjected to environmental loads. Such large
responses, in turn, can cause human discomfort or illness and some times, unsafe
conditions. Passive, semi active, and active vibration control schemes are becoming an
integral part of the system of the next generation of tall buildings (Mohsin Jamil et al., 2007)
6.2 Selection of strategy:
The available strategies are:
• Active Tuned Mass Damper (ATMD)
• —Sinusoidal Reference Strategy (SRS)
• —Mass dampers and their optimal designs
Comparing all the above strategies, most results are similar with very few differences. The
efficiency and robustness of SRS strategy and ATMD are similar to that of LQG (linear
quadratic Gaussian) sample controller. Due to lack of help from the passive method, the
control forces are much larger than that using the ATMD actuation system. So for this
experiment LQG controller is suitable to apply and easy to develop. In the case of active
tuned control devices, an actuator is required; the installation cost of the actuator is more. So
130
Automation and Robotics
the operation cost of the active tuned mass dampers is more than the LQG controller. Here
we selected active tuned mass damper for implementation.
6.3 Process identification and selection of suitable model
The knowledge about the dynamic characteristics of a system is one of the most important
aspects of control system design. An accurate mathematical model of the system determines
whether a controller works properly or becomes unstable. Because of the practical
unavailability of wind force measurement, the system identification in this study is
processed without them. The active control force and wind forces are the actual exciting
input forces to the structure.
A linear black box model shall be developed for this process.
The steps followed to develop the model are:
Make an experiment
Data processing
Model selection
Parameter estimation
Model Analysis
Model appraisal
6.3.1 Experimental setup
A model of a flexible tall building structure is designed in the laboratory (see fig7) in order
to study and design of a semi active control system with ATMD i.e. active tune mass
damper. Dynamic parameters collected through system identification as described in the
following section, and controller performance is simulated through MATLAB. An
accelerometer is placed on top of the model to measure the response of the structure with
nominal dimensions lm x 0.05m.
Mass damper
Steel rod
Plat for Wind
damping
Stepper controller
Fig. 7. Experimental Setup
Identification of Dynamic Systems & Selection of Suitable Model
131
In the fig 7, we can see the mass damper attached on the top of the system to reduce the
vibration of the structure .The mass damper having the variable mass but we can change the
mass in the initial stage i.e. before the system to run. This mass damper i.e. (TMD) tune mass
damper operate with the help of a linear servo motor. For more broad view of the mass
damper, servo motor and accelerator meter is shown in the fig.8 below.
Mass damper
Steppar motor
Accelerome
Fig. 8. Closer View of Setup
In the fig.8, we can see the steel rod of one meter height attached in the base of the steel
structure stands for the height of the building. The steel rod attached is quite light weight
and flexible to allow it vibrate with the impact of the external force. The motion of the
structure is just like a pendulum. It vibrates with its natural frequency whose acceleration in
terms of voltages is roundabout (+0.02) to ( 0.03) voltages if even without any external
force. As it is described previously that voltages output represent the acceleration of the
system. The natural movement graph is given below in fig. 9.
Natural frequency of the structure model
10 15
seconds
Fig. 9. Natural frequency graph of the structure model.
132
Automation and Robotics
So as this vibration of the system is due to the natural frequency or natural movement, we
can't reduce this vibration more than this low frequency or acceleration.
The length of steel rod made our system model high degree of robust and fast vibrating. So
reduction of the vibration is harder and required more time to stop to natural frequency as
compare to the actual system. As shown in the fig. 7, the plate for wind damping is used to
create the effect of linearization of the wind effect. It also tries to create real conditions as in
our steel structure rods having between empty spaces to pass the air as compare to the high
structure building. So to create the filled effect of the building, we use this board sheet as
show in fig7. It also creates the linear effect for the air force.
PCI1710, I/O card (Input and output) is used to get the output of the model structure
acceleration in term of the analogue voltages. With the A/D converter (analogue to digital
converter), voltages from the accelerometer is converted to digital form to communicate
with the matlab. This voltages to use for control, i.e., for taking the measurements feedback,
computing the control command and then sending out back the voltages to the servo motor
through the PCI I/O card. D/A conversion are used for the voltages coming out from the
computer to the structure model's servo motor. The schematic diagram of the PCI
1710(12/16 bit multifunction card) is shown in appendix. In PCI1710 series four pins i.e. 57,
58, 60 and 68 are used. Pin57 and 60 are grounded, Pin58 (D/A) is the output from the
system and Pin 68 (A/D) is the output from the setup.
The basic idea behind this control of the structure model against the external forces is to
operate the mass attached on the top (tuned mass damper) in opposite direction to the
motion of the structure
Uncontrolled vibration of the system under external force
I'll. '
— vibration
I
ill ill'"
;liiifffl**W«
: : i
fwlP [
III
time in seconds
Fig. 10. Uncontrolled vibration due to single external of the structure model.
The figure 10 shows the behavior of the tall structure prototype model under external force
without controlling it in open loop. This shows that the system vibrates like a pendulum
and even after 100 seconds the vibration is more than 0.1 units of acceleration. This figure
provides good reference for us to compare between the controlled and uncontrolled system.
It also shows that after 30 seconds system comes to high vibration level as 1.00 units of
acceleration. And after 60 seconds the vibration comes in the range of 0.5 voltages.
6.3.2 Experiment design
The goal of experiment is to affect all frequencies of interest with as much as possible of the
available input energy. When a process model is constructed by using identification
Identification of Dynamic Systems & Selection of Suitable Model 133
methods, measured data is necessary when unknown model parameters are estimated. This
means both the input and the output variables have to be collected when process is running.
Several aspects have to be considered when designing an experiment to achieve informative
measurements from the process. First of all there are practical considerations in what way
we can affect the process. We have to realise when the process is affected by external signal,
the process will be disturbed. Hence the output of the process will deviate from a desired
result. This situation will limit the amplitude of input signal and the length of the
experiment. When designing the signal is that the inputs shall influence the process in a way
so the interesting frequencies are affected. Further to keep the relative error constant, we
need a signal with constant signal/ noise ratio (Bjorn Sohlberg, 2005). Much commercial
process cannot be exposed by an open loop experiment. It is not possible to run the
experiment without proper controller. There may also be problem with running the process
safely, which means it is necessary to keep important process variables with in specified
limits. From the discussion, we have that a suitable wave form is a pseudo random binary
signal.
Generation of PRBS Signal:
This kind of signal has the lowest crest factor and is easy to implement. This signal has also
the advantages to be piece wise constant, which makes it suitable to identify discrete time
linear models. The PRBS signal is generated from the matlab routine named makeprbs.
PRBS signal is applied at the input of the system. For this purpose it is necessary to define its
parameters. (Bjorn Sohlberg, 2004)
» PRBS= makeprbs (tstop, ts, tmin, tmax, umin, umax);
Stop time: the experiment have to take place during a time long enough to achieve
estimation of the unknown parameters. The given process is vibration process so 30 seconds
more enough to estimation of unknown parameters. So we take: tstop=30 seconds;
Sample time: when the sample time is long, we will have high variance values of the
estimated parameters. When the sample time is too short, the change of the outputs may be
small compared to the measurement disturbances. When the sample time is h=0.05 seconds,
we will have three samples during the transport time.
Thus we select: ts=0.05 seconds;
Time at the same level of the input signal: the input signal must affect the process longer
than a shortest time period which influences the outputs considerable. The signal length on
the same level must be long enough to influence the dynamic of the process. Long duration
on the same level give no more information about the behaviour of the process. Hence
between the shortest and longest time periods the signal change levels with a random
distribution of the time duration on the same level. The longest time of the input signal can
be chosen as 0.7seconds, if the value more than this the output of the process is not follow
the input, means when the signal is constant at that moment is also system is oscillating. The
shortest time of the input signal at the same level can be chosen as 0.5 seconds, if the value
less than this the output of the process is slow than the input of the process, means when the
input signal varying the output is varied slowly.
tmin =0.5 seconds, tmax =0.7 seconds;
134
Automation and Robotics
5 r
4.8
4.6
4.4
4.2
4
3.8
3.6
3.4
3.2
3
100
Fig. 11. PRBS Signal
Simulink schema for experiment with a process
Communicate with the pi
u In: 010 V
Process
Interface
Double click
here to set
outputs to
zero
©
Fig. 12. Simulink Window of the Process
Amplitude values of the PRBS: large amplitudes may also increase the influence of process
non linearity's, which makes the system identification, based on a linear model, more
difficult. We should avoid using values of the inputs at the ends of its range. In our process,
the input signal can be affected within the range [2.4  4.6]. The input signal must not
produce nonlinear characteristics. The system is to be controlled in a steady state; hence, the
small oscillations in transient time must be avoided. For this reason we have limitations in
Identification of Dynamic Systems & Selection of Suitable Model
135
control signal, Umax=4.3 volts and Umin=3.3 volts; the change in the input signal should
not be large because linear model would turn to be nonlinear model. The parameters are
estimated from the different experimental trails and then decide the values are suitable for
this process. Finally we have:
» PRBS= makeprbs (30, 0.05, 0.5, 0.7, 3.3, 4.3);
Let the input signal be PRBS; the sample time in all appropriate blocks in the simulink
window has to be changed at the start of the experiment. The stop time for the simulink
window must be same as the experiment stop time.
After the experimentation the system will record the measured data through sensors. For
this data will help to make mathematical model.
Training sequence
Figure. 13. Input and Output of the Process
The results from the experiment are shown in fig.13. It shows both the input and output of
the process. From the experiment it can be concluded that the variation in the amplitude of
the output is same as input. It also shows the output follows the input with little delay.
6.3.3 Data processing
After this idealised experiment, there is no need for any data processing. From fig. 13, we
can see there are no outliers, or filtering or low and high frequency disturbances needed to
be eliminated. The stationary point for the output is 2.24 and input is 3.75. Hence we need to
eliminate mean values from the measurements.
»data_d=dtrend (dat); %removing mean values
»data_d=dtrend (dat, 1); % removing trend values
6.3.4 Parameter estimation
During the identification of the model procedure, we let three models ARX, ARMAX and
OutputError to find the best model. Details of these models have been already explained
earlier. So we just apply and show the research results.
136
Automation and Robotics
Model
Parameter
ARX3
ARX4
ARX5
ARMAX3
ARMAX4
Al
2.519
(±0.03516)
3.111(±0.01927)
3.267
(±0.03743)
2.661
(±0.03138)
3.099
(±0.02297)
A2
2.167(±0.06646)
4.176(±0.05036)
5.849
(±0.1174)
2.433
(±0.05957)
4.118
(±0.06053)
A3
0.6157(±0.03421)
2.882(±0.04939)
5.248
(±0.1605)
0.7544
(±0.03065)
2.808
(±0.05999)
A4
0.8708(±0.01815)
2.582
(±0.1133)
0.8388
(±0.02226)
A5
0.53
(±0.03479)
Bl
0.01872(±0.001846)
0.0309(±0.0008174)
0.01499 0.00968 0.02928
(±0.001243) (±0.001587) (±0.001005)
Loss fen
0.00150523
0.000265366
0.00028017
0.00054384
0.0001517
FPE
0.00152941
0.000270705
0.00028453
0.00056146
0.00016517
Model
ARMAX5
OE3
OE4
OE5
Parameter
Al
3.642
(±0.03699)
0.2612
(±0.7533)
0.3144
(±0.502)
0.8788
(±0.1729)
A2
5.875
(±0.1166)
1.395
(±0.9609)
0.2596
(±0.4368)
0.3017
(±0.1248)
A3
5.306
(±0.16)
1.598
(±0.6474)
0.8884
(±0.3116)
0.0144
(±0.0684)
A4
2.667
(±0.1132)
1.392
(±0.4393)
0.5596
(±0.1175)
A5
0.5745
(±0.03478)
1.123
(±0.1684)
Bl
0.01171
(±0.001239)
0.8989
(±0.0914)
0.8811
(±0.06313)
0.952
(±0.0474)
Loss fen
0.00015433
1.49666
1.35876
0.740544
FPE
0.00016944
1.52094
1.38649
0.773725
Table. 2. Parameter estimation
Identification of Dynamic Systems & Selection of Suitable Model
137
Percentage of Error:
Now we check percentage of error in estimated models. All the values are given below in
table 3.
Model
Parameter
ARX3
ARX4
ARX5
ARMAX3
ARMAX4
ARMAX5
OE3
OE4
OE5
Al
1.4%
0.6%
1.1%
1.2%
0.7%
1%
288%
159%
19.6%
A2
3.1%
1.2%
2%
2.45%
1.5%
2%
68%
168%
415%
A3
5.6%
1.7%
3%
4.1%
2.14%
3%
40%
35%
475%
A4
2.08%
4.4%
2.7%
4.2%
31.5%
21%
A5
6.5%
6.1%
15%
Bl
9.86%
2.6%
8.3%
16.4%
3.4%
1.1%
10%
7.2%
5%
Table. 3. Percentage of error of the estimated parameters
It clearly shows which model represents the process. Every parameter is estimated given by
its margin of errors as the standard deviation.
Discussion on Loss Function: The loss function decreases relatively slowly between the
models ARX3 and ARX4. The smallest value is achieved from for the ARX4 model.
However we can see that the smallest value of FPE is achieved for ARX4. Hence, the results
from the loss function and the number of estimated parameters favours model ARX4. The
loss function decreases relatively much between the models ARMAX3 and ARMAX5. The
smallest value achieved from for the ARMAX4 model. However we can see that the
smallest value of FPE is achieved for ARMAX4. Hence the results from the loss function
and the number of estimated parameters favour model ARMAX4.The loss function
decreases relatively much between the models OE4 and OE5. The smallest value achieved
from for the OE5 model. However we can see that the smallest value of FPE is achieved for
OE5. Hence the results from the loss function and the number of estimated parameters
more.
Discussion on Parameter Estimation: Every parameter estimate is given by its margin of
errors, i.e. the standard deviation. For the model ARX4, the margin of errors is small
compared to the model ARX3 and ARX5.For the model ARMAX4, the margin of errors is
small compared to the model ARMAX3 and ARMAX5. For the model OE5, the margin of
errors is small compared to the model OE3 and OE4.Compare all three models ARX4,
ARMAX4 and OE5; among these ARX4 has less parameter error and less parameters
compared to ARMAX4 model.
6.3.5 Model analysis
The ARX [4 11] model is simulated using the outputs from the process. The output of the
model is compared with the output of the process. The result is shown in following figure.
138
Automation and Robotics
Simulation:
Estimation with arx model [4 1 1]
time(s)
Fig 14: Simulation Results
From the simulation it can be seen that the model ARX [4 1 1] is able to describe the
measurements from the process well.
Auto and Cross Correlation Analysis: The next step in the model analysis is to figure it out
the residuals of auto and cross correlation results.
1 r
Correlation function of residuals. Output y1
0.5
0^
Q Q T
G ft eh Q
0.5 L
lag
Cross corr. function between input u1 and residuals from output y1
0.1
^wwTTTTTnmmTmftfrTTTrTffrTTlTf'TlTTm ;
0.1
25 20 15 10
lag
10 15 20 25
Fig 15: Auto and Cross Correlation
The curves show that no value of cross correlation and very few values of auto correlation
coming out of the defined boundaries of the standard deviation and the residual is
independent between two or more samples. The residual is also independent of the control
signal. So there is no more information left to be gathered from the process.
Identification of Dynamic Systems & Selection of Suitable Model
139
Frequency Analysis
The frequency characteristics are investigated by plotting the bode diagrams for the
measured data and the models. The Upper bode plot shows the gain (amplitude) and the
lower shows the phase of model ARX [411]
From u1 to y1
200 p
100
O
100
200
300
400
500 L_
10" 1
yv^
Frequency (rad/s)
Fig 16: Frequency Diagram
The frequency plot based on an estimated model and spectrum from measured input/
output signals is performed by using Matlab SITB, the plot shown in fig 3.6 provides the
information, whether the frequency relation between input and outputs is covered by the
model.
The above figure is showing that the model and process have similar dynamic curves. So the
model is representing the process well.
Polezero analysis: The following figure shows the poles and zero of the model.
Figure 17: PoleZero Diagram
140
Automation and Robotics
The above figure of poles and zero shows that, the model is not over determined and it is
also shows that the pole is far away from the area of the zero. From fig3.9 the uncertainty
plot from poles and zeros are not overlapping each other. So there is no pole/ zero
cancellation. Furthermore the poles/ zeros lay insight the unit circle, so the system is stable.
6.3.6 Model appraisal
During the model appraisal, we are going to make an in all analysis concerning which
model is best suitable to describe the process. From the model analysis, we have that the
model ARX4 is favoured from the analysis of Loss function, FPE and parameter estimation.
The values from the parameter estimate are significant for models ARX4 and ARMAX4.
But OE3, OE4 and OE5 have overestimated parameters. ARX4 has fewer margins of
errors compared to ARMAX4.The extra parameters are estimated for the model OE model.
Hence some of the parameters for OE are not significant. From the model simulation, it is
seen that the models are ARX [411] are able to describe the measurements from the process.
From the correlation, it is obvious that ARX3, ARX5, ARMAX3, ARMAX4, ARMAX5,
OE_3, OE4, and OE5 give a result which is more outside the confidence interval. The ARX
4 fulfils the tests for both the auto and cross correlations. Further, the frequency analysis
contradicts the remaining models except ARX4 model. While pole zero plot shows that
ARX4 is better among the others. It can be conclude that most of the model analysis favours
the model ARX [411]. It is not necessary to expand or use another model type.
6.3.7 Simulated mathematical model of a process
From the chosen mathematical model, the simulink diagram is made in the matlab. In the
fig.3.10 the mathematical model is tested for its suitability for the system
To Workspace7
Step4
C^
To Workspace5
Fig 18: Selected Mathematical Model in Simulink Window
Generally the system is an oscillating system, so the output must be a sine curve. To check
this result a reference signal is given as step input and its value is set to zero, adding step
signal at step time lsec and after 0.1 sec the signal is removed. The above fig. 19 represents
the input and output of the mathematical model. From the results the mathematical model
Identification of Dynamic Systems & Selection of Suitable Model
141
satisfies the original process. Firstly the controller for our mathematical model is designed to
replace original process instead of model. Among the various controllers available the pole
placement controller and state space pole placement controller are chosen.
input signal
0.9

0.8
0.7
0.6
_
>.
a* 0.5

> 0.4

0.3
0.2
0.1

(a)
Fig 19: (a) output signal and (b) input signal
(b)
7. Summary
From the results of above experiments, PRBS signal is defined, using this as input to the
system and obtaining their corresponding output. For the output obtained, three different
matlab scripts were built for model estimation (which calculate the model parameters and
represent its behaviour of the system), one for each sort of model (arx, armax, outputerror).
Using matlab scripts, two of the models are discarded. The order of the chosen one (ARX)
was defined by successive limitations of the range and elimination of the least effect
parameters. From the analysis of simulation, parameter estimation, polezero analysis,
frequency diagram, auto and cross correlation, the final model resulted is arx [4 1 1]. It
defines the process with 5 parameters with a delay of one sample; the other two models are
discarded from the model analysis. All the model analysis is shown in the report. Thus
identification of real process was done successfully and then model is selected, it will be
used for design of controller in next phase. It has been tested that control design for this
model is perfect.
8. References
Banning DA, Hengeveld LD, Modi VJ (1966), " Apparatus for demonstrating dynamics of
sloshing liquids", bulletin mechanical engineering education, p.p5:6570.
Bjorn Sohlberg (2005). Book: Applied Modelling & Identification, Dalarna University, Sweden.
Bjorn Sohlberg (2005). Book: Applied model based control systems, Dalarna University, Sweden.
JongCheng wu, Bochen Pan (2002) "Wind tunnel verification of actively controlled high
rise building in alongwind motion", journal of wind engineering and industrial aero
dynamics 90, p.p 19331950, 2002.
Jin Zhang, Paul N.Roschke (1999) "Active control of a tall structure excited by wind",
journal of engineering and industrial aero dynamics 83, p.p 209223, 1999.
142 Automation and Robotics
J.T.P.Yao (1972), Concept of structural control, Journal structural division ASCE 98 (ST7)
p.pl5671574, 1972.
Mohsin Jamil , G.Murtaza Hashmi ,Nagendra, & Bjorn Sohlberg (2007) " Modelling &
Identification For Active Control Of Tall Structure Excited By External Forces"
Proceeding of 13th IEEE/IFAC Conference on Methods & Models In Automation &
Robotics(MMAR 2007),pp.l2031208,August 2730,2007 ,Szczecin Poland.
R.J Faciani, K.C.S.Kwok, B.Samali (1953) "Wind tunnel investigation of an active vibration
control of tall buildings", Journal of Wind engineering and industrial aerodynamics, p.p.
397412,1995.
Y. Fujino, T.T. Soong, and B.F. Spencer Jr. (1996), "Structural Control: Basic Concepts and
Applications " Proceedings of the ASCE Structure Congress, Chicago, Illinois, and April
1518,1996.
8
Towards an Automated and Optimal
Design of Parallel Manipulators
Marwene Nefzi, Martin Riedel and Burkhard Corves
Department of Mechanism Theory and Dynamics of Machines,
RWTH Aachen University
Germany
1. Introduction
The development of parallel manipulators involves new challenges related to the design of
the mechanical, actuating and informationprocessing subsystems. In this chapter, we limit
ourselves to the design of the mechanical subsystem. It typically includes a structural and a
dimensional synthesis. Whereas the first one consists in finding the a priori most appropriate
mechanical architecture, i.e. the types and the arrangements of the joints and the links that
make up the robot, the latter deals with the determination of its dimensions in order to
match the requirements of the task at hand as closely as possible. Structural synthesis may
be achieved either by combining in a systematic way the different types of joints and links
allowed by the task in order to obtain all possible arrangements, or by considering pre
existing solutions and customizing them. Clearly, this step relies on engineers' intuition,
whereas dimensional synthesis can more easily be automated. Still, it remains a very
delicate task, especially for parallel manipulators. Indeed, the performances of these
manipulators heavily depend on the chosen geometry. As underlined by many authors
(Gosselin, 1988; Merlet, 2006), they also possess kinematic features that vary in opposite
directions when their dimensions are modified. In this chapter, we propose an approach to
the optimal design of parallel manipulators that helps the designer to find the appropriate
dimensions of the mechanical structure he has opted for. For the sake of clarity, we illustrate
our approach by a practical example: the design of a guidance mechanism to be used in a
stitching unit.
This challenging task results from the continuous demand for speeding up the assembly
process of reinforcement textiles needed for the manufacture of fibre composites This
demand has led to an increased automation over the last decade in the textile industry. In
order to reduce the process duration and to improve both the productivity and the quality
of the assembly seam, robot stitching units have been introduced. Recently, we have
proposed a new sewing technology in (Kordi et ah, 2006). In contrast to conventional ones,
all mechanical parts of the proposed sewing head are arranged only on one side of the work
pieces. This enhances chances for the automation of the assembly process, as the free side
can be more easily attached to manipulators. The next step is to design an appropriate
manipulator that takes into consideration the peculiarities of this technology.
144
Automation and Robotics
(a) (b)
Fig.l Perspective view of the CAD model (a) The stitching unit (b)
We have already established a systematic procedure for the generation of all the structures
having the number of degrees of freedom required by the task. We have also defined a list of
evaluation criteria to asses the generated architectures. Without being exhaustive about this
methodology, we show a CAD model of the resulting mechanical structure in figure la: a
hybrid manipulator with seven degrees of freedom. Figure lb depicts the finished stitching
unit. It consists of a fully parallel robot with five degrees of freedom (Mbarek et.al, 2005),
whose moving platform is equipped with a drive that amplifies the rotation of the sewing
head about its longitudinal axis. This large rotation is required for tracking circular seam
paths. Furthermore, this unit is mounted on a linear axis to achieve large translations in one
direction. The development of such a stitching unit implies a careful design of the parallel
manipulator to be used. Indeed, its kinematic performances will be decisive for the overall
performances of the stitching unit.
So far, we have only considered the number of degrees of freedom. Further stages of the
design process have to involve other requirements such as the workspace volume, the
positioning accuracy of the sewing head, its maximal translation and angular velocities
etc.... To this end, we first review some available design methodologies for parallel
manipulators. Then, we investigate the kinematic and Jacobian analysis of the parallel
manipulator to be considered. In the fourth section, we list the requirements of the task and
associate to each of them a performance index that indicates whether the requirement is
satisfied by the manipulator or not. Once these performance indices can be evaluated
numerically, we will develop a numerical procedure that guarantees the generation of
design solutions that meet all prescribed requirements simultaneously. Finally, we will give
graphical representations of the prescribed performances and the obtained ones.
2. Available design methodologies
Many approaches have already been proposed in a rich literature about the design of
parallel robots. The parameter space approach has often been proposed by Merlet (Merlet,
1997; Merlet, 2006). It consists in finding sets of robot geometries by considering
Towards an Automated and Optimal Design of Parallel Manipulators 145
successively two requirements, i.e. the workspace requirement and the articular velocities.
The intersection of these sets defines all designs that satisfy these two requirements
simultaneously. The obtained set of design solutions is then sampled to determine the best
compromise with regard to other requirements, which were not considered yet. An
implementation of the parameter space approach based on interval analysis has also been
proposed in (Merlet, 2005a; Hao and Merlet, 2005). Interval analysis has appealing
advantages, such as generating certified solutions and finding all possible mechanisms for a
given list of design requirements. Yet, it remains very time consuming and requires a lot of
storage. It should be pointed out, however, that some improvements can speed up the
algorithm, see (Merlet, 2005b).
Another way to deal with the optimal design of parallel robots is the cost function approach.
Some authors focused on the synthesis of parallel manipulators whose workspace complies
as closely as possible with a prescribed one (Gosselin and Boudreau, 2001; Ottaviano and
Ceccarelli, 2001). Later, the design problem becomes a multi objective optimisation problem
(Ceccarelli, 2002; Arsenault and Boudreau, 2006). Many of these formulations have,
however, the drawback of providing one design solution, which is generally a trade off
between the design objectives. Having one design solution may confine the end user at
many stages of the design process. In our formulation, we will define lower bounds for each
performance. If a robot features kinematic characteristics that are better than the prescribed
ones, then it will be retained. Hence, many design solutions are possible. Furthermore, if
these bounds are chosen adequately, the proposed formulation ensures the generation of
many solutions that satisfy all prescribed requirements. Our formulation can, therefore, be
seen as an alternative between the parameter space approach that provides a set of infinite
solutions and usual formulations that find one design solution.
3. Jacobian analysis
Prior to the quantification of the manipulator's kinematic performances, we review its
kinematics without being exhaustive, for more details see (Mbarek et.al, 2005). As depicted
in figure 2, the parallel manipulator consists of five kinematic chains. Four of them have the
same topology and are composed of a universal joint on the base, a moving link, an actuated
prismatic joint, a second moving link and a spherical joint attached to the platform. In
reality, universal joints have also been used for the platform, since the slider of the actuators
can rotate about its longitudinal axis. The fifth kinematic chain can be distinguished by the
antitwist device. This special leg restricts the motion of the platform to five degrees of
freedom so that only five of the six Cartesian coordinates can be prescribed independently.
The remaining rotational coordinate y/ cannot be controlled; it corresponds to a constrained
rotation of the platform due to the special leg. The first step in achieving the kinematic
analysis is, therefore, the computation of this angle by considering the supplementary
constraint in the special leg.
Referring to figure 1, a vectorloop equation can be written for the ith leg of the mechanism
as:
p =a +r + Qb; (1)
where Q denotes the Euler rotation matrix and pi represents the vector from the joint centre
point Ai to the joint centre point Bi. The vector r = (x, y, z) T designates the position of O'
with respect to the frame of coordinates (O, x, y, z). Furthermore, we denote by a and by b
the radii of the base and the platform.
146
Automation and Robotics
Differentiating (1) with respect to time for each leg leads to six equations that can be written
in this form:
P = J P X (2)
where x = {x y z co a co^ co. / is the velocity vector of the end effector and J p denotes
the Jacobian matrix of the parallel manipulator. It has been shown in (Mbarek et.al, 2005)
that:
fa (QKxsJ
K (Qb 5 xs 5 ) T
si
(3)
The vector s. denotes the unit vector along the ith leg. The last row of J p corresponds to
the additional constraint in the special leg. Hence, the first five elements of the vector p are
the actuators velocities and the sixth element corresponds to the component of the
platform's angular velocity along the unit vector S5. The interrelation between an external
wrench F exerted on the platform and the vector of the actuators' forces T is provided by
following equation:
F = J T x
j p
(4)
The sixth element of the vector x corresponds to the moment exerted by the additional
constraint.
2 \
fixed platform
I
2 ^ y 3
moving platform
(a) (b) (c)
Fig. 2. Schematic representation of the parallel manipulator (a), the base (b) and the platform
(c)
3. The design requirements and the optimisation of the robot's performances
The starting point of the design process is usually a list that tabulates the requirements of
the task, as shown in table 1. These may be categorized according to their importance as
demands or wishes. Whereas demands are those requirements that must be met to obtain a
Towards an Automated and Optimal Design of Parallel Manipulators
147
satisfactory design, wishes can be used to make the final choice between different feasible
solutions. The corresponding values of the manipulator's performances can be seen as lower
bounds to be met. In other words, each manipulator that features at least these values is
considered as an appropriate design. In this way, many design solutions can be generated.
Besides, the search for an appropriate design is more straightforward.
Requirements of the stitching process
Performance index
Geometry
Motion
parameters
Machining
quality
Size of the work
pieces
Shape of the work
pieces
Stitching speed
Allowed deviation
from the desired
seam shape
400 x 400 x
200 mm3
Three
. dimensional
1000 stitches
per minute
0.1 mm
Constant
orientation
Workspace
Rotation ranges
Translation
velocity
Angular
velocity
Positioning
accuracy
Orientation
accuracy
400 x 400 x
200 mm3
±20°
0.3 m/s
n/2 rad/s
0.1 mm
0.05°
Table 1: Requirements list and the corresponding performance indices
As shown in Table 1, we associate to every demand one or more kinematic performances of
the manipulator. In the following, we attach an index to each performance in order to
quantify to what extent each requirement is satisfied or violated. Once the derived indices
can be evaluated numerically, we present a formulation of the optimal design problem able
to provide many design solutions that satisfy all demands of the requirements list. Since the
corresponding performances of the manipulator may differ from each other in both unit and
value, we derive functions whose values range from to 1. indicates that the manipulator
satisfies the design criterion. On the other hand, the index converges to 1, if the kinematic
performances of the manipulator are far away from the prescribed values.
3.1 The design parameters
Prior to the formulation of the objective functions, we should identify the geometric
parameters that have to be modified in order to meet the requirements. Previous works of
different research groups showed that the accuracy of parallel manipulators is sensitive to
the angles a. and (3. . Moreover, the radii of the base and the platform, the minimal and
maximal leg lengths affect the workspace's volume of the manipulator. We may also assume
that the joint centre points Ai and Bi are symmetrically disposed on a circle, i.e.
a 1 = a 4 , a 2 = a 3 , /? 2 = (3 4 and (3 2 = (3 3 . The attachment points A5 and B5 of the special leg
should not be modified. Indeed, a modification of these points complicates the computation
of the constrained rotation; and thereby the solution of the inverse kinematic problem. A
further design parameter could be the height z of the platform's start position. In this way,
we end up with 9 design parameters that can be defined as a vector:
n = (p m
a i a 2 a Pi P 2 h Z o)
148
Automation and Robotics
3.2 The workspace requirement
The seam path to be achieved should entirely fit in the workspace of the manipulator. As we
intend to join small and medium sized fibre composites, the required workspace should be a
parallelepiped of 400mm x 400mm x 200mm. In order to join 3D structures of fibre
composites, the needles of the sewing head should always be perpendicular to the seam
path. Hence, a rotation of the sewing head of 1000 stitches per minute, and thereby of the
manipulator's platform should be possible. For every point in this parallelepiped, each leg
length pJ must neither exceed the maximal available stroke p max , nor be lower than a
length offset p mm , which corresponds to the stator length.
Accordingly, the objective function Fi corresponding to the workspace criterion can be
formulated for each ith leg as:
F ;,(x„n)
llP'll
o,
IIp.II
P,>P m a X
p m ,„ ^lp,l
lp,l<p min
 Pmax
(5)
where x n = \ x n Vn z n 9* ^« Wn J represents the vector of the actual pose. The
workspace is defined as a set of N finitely separated poses that result from the discretisation
of the prescribed parallelepiped. As formulated in (5), the objective function Fi to be
minimized has numerical values between and 1. If the leg length is within the range p min
and p max , the workspace requirement is satisfied and Fi returns 0. It converges to 1, if the leg
length is greater than the maximal stroke p max of one actuator or lower than p mm .
Furthermore, the rotation of the passive joints should not exceed the operating angles for
every configuration of the manipulator in the prescribed parallelepiped.
%
Fig. 3: Operating angles of the universal joints
Towards an Automated and Optimal Design of Parallel Manipulators 149
To this end, the resulting angles in the universal joints on the base and on the platform
should be within a range of ±45°. An additional objective function is therefore necessary to
guarantee that every configuration in the prescribed workspace is feasible with regard to the
passive joints:
F a ",Gcn)
1
Y max
Y„
o,
1
Yji
,
Y m n
Yji > Y™*
< < (6)
Y m , n ^ Y^ ^ Y™
Y, < Y mn
y . denotes the rotation angles of the passive joints in each leg. The computation of these
angles is straightforward and is not reported in this work.
3.3 The accuracy requirement
Position and orientation errors of the tool centre point are, mainly, due to the bounded
resolution of the encoders. The amplification of these errors is given by (8) in each direction
of the Cartesian space.
6p = J p 5 X (8)
In order to avoid the time consuming inversion of the Jacobian matrix, we specify the
desired accuracy of the platform and try to match the known resolution of the
encoders, i.e. 10 Jim. The minimal position and orientation accuracy should not be lower
than 0.1 mm in x, y and z direction and 0.05° for the angles <p and 6 .
A possible design objective is therefore the maximization of 5p over the workspace. Hence,
the corresponding function can be written as:
[ 0, 6p. > 5p mm
3.4 The stiffness requirement
External forces and moments acting on the moving platform cause a compliant
displacement that depends on the stiffness of the legs ki, k2, k$, k4 and ks and the additional
constraint in the special leg ke, i.e. the stiffness of the universal joint on the platform. In this
work, we are not interested in evaluating the stiffness matrix K = diag(ki, k2, k$, k±, ks, ke).
Rather, the parameters ki, ... , k6 correspond to scaling factors. Consequently, the compliant
displacements differ from the displacements that may occur in reality. Even though, it's still
important to consider this design criterion, since it guarantees that the compliant
displacements in each direction are bounded. It should be noted, however, that the
parameter k6 has been chosen larger than the other stiffness parameters.
For a given displacement of the actuators and the constraint in the special leg, the resulting
forces in the actuators are
x = K6p (10)
150 Automation and Robotics
After substituting x and 5p in (10) by J p T F and J p 5x from (4) and (8), we obtain an
interrelation between the external wrench and a compliant displacement:
F = J;KJ p 8 X (11)
In order to avoid the time consuming inversion of the Jacobian matrix, we specify the
minimal external forces and moments in each direction and strive to find design geometries
whose compliant displacements are lower than 0.1 mm in each direction and 0.05° about the
direction of the reference frame. For simplicity of exposition, we denote by F min both the
minimal external forces and moments. The corresponding function can be written as:
[ 0, F > F min
3.5 The velocity requirement
Owing to the fact that actuators velocities are bounded, it is important to find a design that
can achieve the required Cartesian velocities throughout the workspace without exceeding
the allowable actuators velocities. The velocity transmission relation is given by (2). Clearly,
the maximal required velocity in each actuator for a given velocity of the platform is:
p.=Z!W ( 9 )
where jj is the absolute value of the ith row and jth column of the Jacobian. A possible
design objective is therefore the minimisation of p. over the workspace. In this case, the
corresponding function can be written as:
FiCr^J 1 ^ pi>p  (10)
{ 0, p ; <p max
In order to achieve our objective of 1000 stitches per minute, the manipulator's platform
should reach a translation velocity of 0.3 m/s in x, y and z direction and an angular velocity
of n/2 rad/s about the y axis for any pose in the prescribed workspace. The actuators
velocities p max should not exceed 1 m/s. Whereas the accuracy requirement consists in
maximizing 5p , thereby maximizing the components of the Jacobian matrix, the velocity
requirement consists in minimizing these components.
3.6 The dexterity criterion
One major drawback of parallel manipulators is singular configurations within the
workspace. In these configurations the manipulator gains or looses some degrees of freedom
and becomes uncontrollable. Also ill conditioned configurations, i.e. configurations close to
Towards an Automated and Optimal Design of Parallel Manipulators 151
a singularity, have to be avoided. Indeed, in these configurations large actuators forces are
required to support even reasonable loads. In order to avoid these regions, an upper bound
for the condition number of the Jacobian matrix should be specified K max = 70 . It should be
noted that this criterion can not be associated to an explicit design requirement. The
corresponding objective function can be formulated as:
Fi{x.n)=i 1_ ¥' K>K  ( 7 )
0, K < K max
The condition number k is defined as the ratio of the maximal singular value to the
minimal singular value of the Jacobian matrix. It can be computed by the Matlab
function cond.
4. Results
It's increasingly apparent that minimizing the derived objective functions to throughout
the manipulator's workspace yields a manipulator whose geometry satisfies all prescribed
requirements. Hence, the optimal design problem can be formulated as:
minF(^) = min[F 1 (x 1 ,n),,F 1 (x N ,n),,F c (x N ,n)] (11)
subject to n e [n min , n max ]
where C denotes the number of the performance indices. Additional constraints for the
design parameters have been included to obtain manipulator sizes within practical values.
After the formulation of the optimal design problem, we may now derive a numerical
procedure to find the optimal design according to the requirements of section 4.
4.1 The numerical procedure
The numerical procedure adopted in this paper is based on trust region methods, as
implemented in the Matlab function Isqnonlin for large scale optimisation problems , see
figure 4.
Basically, an objective function F to be minimized is approximated at each step with a
simpler function: J F s + F in a neighbourhood N of the current point (the trust region). J F is
the Jacobian matrix of the objective function. A trial step s is computed by minimizing the
new function over the trust region. If an improvement of the objective function, i.e. a lower
function value, is achieved, the current point is updated using the computed step.
Otherwise, the current point remains unchanged and the region is contracted, see also (The
Math Works Inc., 2006).
In order to generate many design solutions, the final algorithm chooses randomly different
initial guesses within the specified ranges of the design parameters, see figure 4. If all
objective functions are reduced to 0, the design parameters are stored and another initial
guess is selected. We ran this optimization algorithm with pi imit = 500 different initial
guesses. The computation time was less than 4 hours, and more than 300 feasible design
solutions have been found.
152
Automation and Robotics
F li ,i=l..C,i=l..N
min  J F s+F ,seN
N is contracted
No
No
' Get prescribed values
and parameters ranges/
3
Choose randomly an initial guess
within the specified ranges
Compute the objective
functions F ;j , i=l..C, j=l..N
lsqnonlin
No
(a) (b)
Fig. 4: A flow chart of the MATLAB function lsqnonlin (a) Flowchart of the overall
numerical procedure (b)
Many design solutions are very close to each other and can be gathered in different groups
of solutions. Table 2 shows a list of five design solutions sorted into ascending value of the
maximal leg length.
p max [m] p mm [m] a, [°] a 2 [°] a [m] (3, [°] (3 2 [°] b[m] z [m]
162 0.55 125 151 0.21 0.73
143 0.57 133 160 0.21 0.87
148 0.6 127 160 0.17 0.85
148 0.6 106 168 0.38 0.94
Table 2: Four feasible design solutions
4.2 Simulation results
In this section, we show the simulation results of the first solution of table 2. Figure 5 and 6
depict an isometric view and a view of the x, y plane of both the prescribed and the constant
1.15
0.67
106
1.3
0.80
109
1.22
0.66
135
1.34
0.83
131
Towards an Automated and Optimal Design of Parallel Manipulators
153
orientation workspace of the selected solution. As shown by figure 7 and 8 an orientation of
= 20° is also feasible without violating the workspace requirement.
Figure 9 and 10 depict the displacement of the first actuator for a position error of 0.1 mm in
each direction and an orientation error of 0.05° in the two first Euler angles, as defined in
(Mbarek et.al, 2005). Moreover, figure 11 and 12 demonstrate that these errors induce a
displacement of le4 m
Fig. 4: Flowchart of the overall numerical procedure
throughout the workspace for = 20° . The accuracy requirement is therefore satisfied for
this actuator, since the resolution of the encoders is le5 m. For simplicity of exposition, the
displacements of the other actuators are not represented in this work.
The velocity requirement is also satisfied. Indeed, the actuators velocities of each actuator is
less than the prescribed limit 1 m/s. Figure 1316, depict the required velocities of the fifth
actuator. Finally, figure 1720 depict the distribution of the condition number throughout
the workspace.
Fig 5: The prescribed workspace and the
workspace of the selected design solution for
£> = 0,6> = 0°
Fig 6: The prescribed workspace and the
workspace of the selected design solution
for z = 0.78m, #> = 0,0 = 0°
05
04
03
02
0.1
Prescribed workspace and the workspace resulting
from a multiobjective optimization for z=0.78 m and $=0" and 8=0"
0.2
0.3
0.4
0 5
Prescribed workspace and the workspace resulting
from a multiobjective optimization tor z=0.7B m and i>=0* and 8=20'
0.5
04
02
0.2
1
I °
\f
0 1
0.2
0 3
0 4
0.5
0.4 02 0.2 0.4 0.6
Fig 7: The prescribed workspace and the
workspace of the selected design solution for
£> = 0,6> = 20°
Fig 8: The prescribed workspace and the
workspace of the selected design solution
for z = 0.78m, q> = 0,0 = 20°
154
Automation and Robotics
Fig 9:Sp 1 for q> = 0,6 = 0°
Fig 10: Sp 1 for z = 0.78m, q> = 0, 6 = 0°
E Pl [nn]f rz = 0.78 m
Fig 11: Sp 1 for (p = 0,6 = 20°
Fig 12: #>, for z = 0.78m, p = 0, 6 = 20°
Fig 13: v 5 for #> = 0,6> = 0°
Fig 14: v 5 for z = 0.78m, p = 0, 6 = 0°
Towards an Automated and Optimal Design of Parallel Manipulators
155
,
0.75
0.7
0.65
0.6
0.55
v 5 [m/s] for z = 0.78 [m]
v 5 [m/s]
5
0.4
3
0.2
0.1
I
0.1
0.2
0.3
0.4
0.5
75
07
0.65
06
0.55
1.1
1
0.9
fo.B
0.7
0.6
0.5
0.2 7?^ — ^0.5
04 o.e y[m]
x[m]
Fig 15: v 5 for cp = O,0 = 2O o
0 5 0 4 0.3 0.2 0 1 1 0.2 0.3 4 0.5
x[m]
Fig 16: v 5 for z = 0.78m, <p = 0, 6 = 20°
Condition Number
48
46
44
42
40
38
36
34
32
30
0.5
0.4
0.3
0.2
0.1
1 °
0.1
0.2
0.3
0.4
0.5
Condition number for z=0.7S m
I
45
46
44
42
40
38
:
30
1.1
1
0.9
I0.8
0.7
0.6
0.5
4t^ :
y' .■■'' ..•■■ ■; ..■'' ,. ' /^° £
^_^_^_v ••'" .•■'' '•:' .■■'' /o
0.2 T7 ——y^0.5
04 0.6 y[m]
Km]
Fig 17: The condition number distribution for
0.5 0.4 0.3 0.2 0.1 0.1 0.2 0.3 0.4 0.5
x[m]
Fig 18: The condition number distribution
for z = 0.78m, #> = 0,0 = 0°
1.1
1
0.9
0.7
0.6
0.5
Condition Number
^^^^ "*^/ 0.5
04 0.6 y[m]
x[m]
The condition number distribution
? = 20°
,
55
50
"
40
35
30
05
0,4
03
02
1
I
0.1
02
03
0.4
05
Condition number for z=0 78 m
I
55
60
;
40
:
Fig 19:
#? = 0,6
fc
r
Fig 2
for 2
0.5 0.4 0.3 0,2 0.1 0.1 0.2 0.3 0.4 0.5
x[m]
0: The condition number distribu
= 0.78m, <p = 0,0 = 20°
ti
on
5. Conclusion
In this chapter, we investigated the optimal design problem of a parallel manipulator with
five degrees of freedom that will be used in a highspeed stitching unit as a guidance
156 Automation and Robotics
mechanism for a novel sewing head. First, we reviewed the kinematics of the manipulator.
Starting from the requirements list, we derived performance indices that allowed us to
evaluate the adequacy of the manipulator for this application. Finally, we developed a
numerical procedure that provides many design solutions, which satisfy all requirements.
Owing to the iterations that may occur during the design process, the designer may consider
different solutions. This allows one to take into account other requirements, such as
manufacturing capabilities, available actuators on the market, costs etc ... The presented
robot stitching unit can be used to assemble reinforcement textiles for the aerospace,
automotive, rail vehicles and shipbuilding industry.
6. References
Kordi, M.T., T. Mbarek and B. Corves (2006). Synthesis of a new mechanism for needle
guidance in a sewing machine with singlesided sewing technique. In: Proceedings of
EuCoMes, the first European Conference on Mechanism Science. Obergurgl. Austria.
Mbarek, T., M. Nefzi and B. Corves (2005). Prototypische Entwicklung eines
Parallelmanipulators mit dem Freiheitsgrad ftinf. In: Proceedings of Mechatronik
2005: Innovative Produktentwicklung. Wiesloch (Germany).
Gosselin, CM. (1988). Kinematic Analysis and Programming of Parallel Robotic
Manipulators. Ph.D. Thesis, McGill University, Montreal, Canada.
Merlet, J.P. (2006). Parallel Robots (Solid Mechanics and Its Applications). Second Edition.
Springer, 2006.
Merlet, J.P. (1997). DEMOCRAT: A DEsign Methodology for the Conception of Robot with
parallel ArchiTecture. In: Proceedings of the International Conference on Intelligent
Robots and Systems, IROS. Grenoble. France. Pp. 16301636
Merlet, J.P. (2005a). The necessity of optimal design for parallel machines and a possible
certified methodology. In: Proceedings of the 2 nd International Colloqium of the
Collaborative Research Center 562, Robotic Systems for Handling and Assembly.
Braunschweig. Germany. Pp. 720
Hao, F. and J.P. Merlet (2005). MultiCriteria optimal design of parallel manipulators based
on interval analysis. Mechanism and Machine Theory 40.
Merlet, J.P. (2005b) Optimal design of robots. In: Online Proceedings of Robotics: Science and
Systems. Boston. USA.
Boudreau, R. and CM. Gosselin (2001). La synthese d'une plateforme de GoughStewart
pour un espace atteignable prescrit. Mechanism and Machine Theory 36. Pp. 327342
Ottaviano, E. and M. Ceccarelli (2001). Optimal design of CAPAMAN (Cassino parallel
manipulator) with prescribed workspace. In: Proceedings of Computational
Kinematics. Seoul. South Corea. Pp. 3544.
Cecarelli, M. (2002). An Optimum Design of Parallel Manipulators: Formulation and
Experimental Validation. In: Proceedings of Collaborative Research Centre 562: Robotic
Systems for Handling and Assembly. Braunschweig. Germany. Pp. 4764.
Lou, Y., Z. Dongjun and L. Zexiang (2005). Optimal Design of a Parallel Machine Based on
Multiple Criteria. In: Proceedings of the 2005 IEEE International Conference on Robotics
and Automation. Barcelona. Spain. Pp. 32192224
The Math Works, Inc. (2006). Optimization Toolbox. User's Guide, Version 3. Pp. 412.
Identification of ContinuousTime Systems with
Time Delays by Global Optimization Algorithms
and Ant Colony Optimization
Janusz P. Paplinski
Technical University of Szczecin
Poland
1. Introduction
There are systems which have inherent time delay. If the time delay used for controller
design does not coincide with the real process time delay, than a closeloop system can be
unstable, or may cause efficiency lost (Bjorklund & Ljung, 2003; Boukas, 2003; Li & Wan,
2002). The identification of linear systems with unknown time delay is important and
should be treated as first task during system analysis and control design. This problem can
become more complicated for the multiinput singleoutput (MISO) system, where the
solution space is multimodal.
The most of conventional system identification techniques, such as those based on the non
linear estimations method, for example separable nonlinear least squares (SEPNLS) method,
are in essence gradientguided local search methods. They require a smooth search space or
a differentiable performance index. The conventional approaches in the multimodal
optimisation can easily fail in obtaining the global optimum and may be stopped at a local
optimum (Chen & Hung, 2001; Harada et al., 2003). One of the possible solution of this
problem is use of a SEPNLS methods with global optimisation elements (Chen & Wang,
2004), for example Global SEPNLS (GSEPNLS), known from the literature (Previdi &
Lovera, 2004).
New possibility in identification of systems with multi modal solution space is opened by
application of the computational intelligence methods (Paplinski, 2004; Path & Savkin, 2002;
Shaltaf, 2004; Yang et al., 1997). Ant Colony Optimization (ACO) is one among them. Ants
are known as a social insects. They exhibit adaptive and flexible collective behavior to
achieve various tasks. The macroscale complex behavior emerges as a result of cooperation
in microscale.
This paper considers the problem of parameter estimation for continuoustime systems with
unknown time delays from sampled inputoutput data. The iterative separable nonlinear
leastsquares (SEPNLS) method and global separable nonlinear leastsquares (GSNLS)
method (Westwick & Kearney, 2001) are presented. We have extended this method by using
the ACO. The ACO proposed in the paper is looking for the time delays. Another
parameters of linear system are obtained during evaluation of leaving pheromone, by using
the SEPNLS method.
158 Automation and Robotics
2. Problem description
The dynamic of continuoustime MISO system with unknown time delays can be described
as:
n r m j _ v
Za iP n  i x(t)=S Sb jkP m r k u . (t _ T]) (1)
i=0 j=lk=l
where
a =l; bj^O;
p  differential operator;
Uj(t)  jth input;
ij  time delay of jth input;
x  nondisturbed output of system;
We assume the parameters n and mj are known.
The measurement output is disturbed by stochastic noise:
y(t) = x(t) + v(t) (2)
The zero order hold is used
u j (t) = u j (k) for (kl)T<t<kT, (3)
where T  sampling period.
The problem studied here is as follows: how to estimate the time delays and the system
parameters from sampled data representation of the inputs and the noisy output.
3. SEPNLS estimation method
The lowpass pre filter Q(p) is used in order to obtain direct signal derivatives (Iemura et al.,
2004):
Q{p)= r~h^ (4)
(ap + lj
where a is the parameter of the Q(p).
Using the prefilter Q(p) and bilinear transformation in the system (1) we can obtain an
approximated discretetime estimation model of the original system:
n r m j
^(k)=Zai^(k)=ZZb^ +1 w k^ + r(k) (5)
i=i j=n=i I J / J
where
r(k)=£a i ^(k) / (6)
i=0
Identification of ContinuousTime Systems with Time Delays by Global Optimization
Algorithms and Ant Colony Optimization 1 59
tj= = P + , 0<A<T (7)
and
^)~ — ^jrM, y = [y, u, v] (8)
4z') + f(l + z'))
The model (5) can be written in the vector form:
^(k) = (p T (k,T)e + r(k) (9)
where
cp T (k,t) = [fry H Zny (4 %{nm j+ X% {* " ?1 1
%nu x i k ~ n \>£(nm j+ l)u r ( k ~ ?r \~^nu r { k ~ ?r )]
(10)
6 T = \a 1 ,...,a n ,b 11 ,...,b lm] ,...,b rl ,...,b rm . J (11)
The parameters of the model can be estimated as the minimizing arguments of the LS
criterion
1 N 1
V n(M = TT^ I o e ( k ' e ' T ) ( 12 )
N_k s k=k c +l 2
8(k,e,x) = ^y(k)cp T (K,x)e (13)
The vectors of the time delays x and linear parameters 6 are estimated in a separable
manner. The linear parameters, when the time delays are known, can be obtained from
linear LS method:
where
9 N (x) = R 1 (N,x)f(N,x) (14)
1 N
R(N^) = FT I cp(k,T)p T (k,T) (15)
JMK s k=k q +l
f ( N ' T )=^T^ ?^( k  x )M k ) ( 16 >
1
k s k=k s +l
The time delays rcan be estimated as the minimizing arguments of the criterion
160 Automation and Robotics
where
and
t = arg min V N
M
Vn
(t) =
1
"Nk £
N 1 ,
 z \#
k=k s +l z
(17)
(k,x) (18)
s(k / T) = ^ y(k) ( p T (k / T)R 1 (N,T)f(N / T) (19)
The all time delays occurring in the system can be computed by the iterative algorithm
x +1 =x+Ax} +1 (20)
where
Axj +1 =H
Kjft)] " W (21)
The parameter ju determines the step size of the algorithm. The Hessian of the LS criterion
R; (x) , which permits to use information about the local curvature of the errorsurface
(Westwick & Kearney, 2001), may be calculated as
1 N
W = ^1T £ V?(k,T), ( 22 )
1M ~&s k=k s +l
and the gradient of LS criterion V; (x) can be obtained from:
2 N
N ~ks k=k q +l
v^) = ^r Z Vj(M8(M (23)
The derivatives \/j(k,x) are defined as
Vj ( k/T ) = «M = ^l R i(N,,)f(N,x)
V(k,t)^f(N,) (24)
After suitable differentiations:
Identification of ContinuousTime Systems with Time Delays by Global Optimization
Algorithms and Ant Colony Optimization 1 61
, . dcp (k,x) r
Pij ( k ' T ) = ^^ = L°lxm/°lxm//Oi xm/
^(nm)u( k ^)^^(nm + l)u( k ^)— ( 25 )
^(nl)u( k ~^)'°lxm'"A xm J
R x,(N,x) l j
*j
1 IN
NK sk=k,+1
1 N
W_K sk=L+l
(26)
(27)
finally we can get
\/j (k,x) = qxj". (k,x)R _1 (N,x)f (N,x)
(p T (k,T)R 1 (N / T)rR x .(N / T) + R^(N,T)lR 1 (N / T)f(N / T) (28)
+( P T (k / T)R" 1 (N / T)f x .(N / x)
I. The SEPNLS algorithm
1. Let 1 = 0. Set the initial estimate of the time delays x j ' = x > ' .
2. Compute Hessian R(N,x) and gradient f(N,x) of the linear LS criterion, for the
assumed time delays x> '  expressions (15)  (16)
3. Compute Hessian R; (x) and gradient V; (x) of LS criterion by harness equations (22) 
(28)
4. Compute new value of the time delays X; + by using the equation (20) and (21)
5. Check if the new time delays belong to permissible area. If not, let decrease the
increment of time delays Ax; + = uAx; + , where u is a random variable, and go back to
step 4.
6. Check if the new value of LS criterion V N x\J is smaller than the anterior
N ^n pV N x^ .If not, decrease the increment of the time delays
Ax} +1 = oAx} +1 , (29)
VmT
162 Automation and Robotics
where u is a random variable, and go back to step 4.
7. If the stopping condition is satisfied, go to the next step 7, else let 1 = 1 + 1 and go back
to step 2.
8. Compute the linear parameter vector from linear LS criterion (14), and terminate
algorithm.
4. The global SEPNLS estimation method (GSNLS)
The SEPNLS method can converges to the local optimum. It is possible to apply stochastic
approximation (Bhart & Borkar, 1999) with convolution smoothing to the SEPNLS method
in order to reach the global optimum (Iemura et al., 2004). The estimate of the time delay in
GSNLS can be obtain as
xf +1 >=f V
MflNf
) + a
(30)
where rj e R r is a random vector used to perturb x. The values of rj are generated by
Gaussian, uniform, or Cauchy distribution probability density function. The values of \i and
P control its variance.
The value of (3 has to be chosen large at the start of the iterations and decreased to zero
when the global minimum is reached (Yang et al., 2005). It can be obtain for
P (1) =PoV N ($) (31)
where the LS criterion V N i\J is given by equation (18). The value of V N x\J decreases
during the sequence of iterations, which cases that disturbances of r decrease too.
5. Ant colony optimization (ACO)
Recently, researchers in various fields have showed interest in the behaviour of social
creatures to solve various tasks. The ants exhibit collective behaviour to perform task as
foraging, building a nests. These tasks can not be carried out by one individual. The macro
scale complex behaviour emerges as a result of cooperation in microscale. This appears
with out any central or hierarchical control. A way of communicating between individuals
in colony is chemical substances called pheromones (Agosta, 1992; Bonabeau et al., 1999).
Ants looking for food lay the way back to their nest with a specific type of pheromone.
Other ants can follow the pheromone trail and find the way to the aliments. Pheromones
remain in the some way superimpose and intensify, concurrently the pheromones evaporate
in time and their intensity decreases. A specific map of pheromones is created on the search
space. This map is not unalterable and can bring into line with ambient. Each ant looks for
food independently of the others and moves from nest to source of food. There are a lot of
ways in which ants can go. Ants choose a way for theirs leverage three sources of
information
the own experience
the local information
the pheromone trail.
Identification of ContinuousTime Systems with Time Delays by Global Optimization
Algorithms and Ant Colony Optimization 1 63
The own experience permits to recognize place when it already was and avoid looping of
the way. For the artificial ant it permits to allocate particular value to appropriate seeking
parameters.
The local information determines permissible way. Ants can recognize and sidestep
hindrances. In the artificial ant colony it is responsible for the search space constraint.
The pheromone trail permits to come back to the nest and find the source of food found
earlier by another individuals from colony. Ants prefer this way in which intensity of
pheromones is the biggest.
The intensity of the pheromone is given by the equation:
x i (t + l) = x i (t)*p + ^JL_ (32 )
"Eli
k=l
where:
x { (t)  the intensity of the pheromone at the time t
p  a coefficient such that (i  p) represents the evaporation rate of the pheromone
between time t and t+1.
n  an amount of ant in the nest;
m  an amount of rows in the matrix of pheromone;
The value of p must be set to a value less than 1 to avoid unlimited accumulation of the
pheromone. The investigation where obtained for p = 0,95 .
The quality function J is divided by the sum of all quality functions in order to uniform it to
one. The quotient the number of ants to the number of rows in the matrix of pheromone
conforms the lied intensity of pheromone to the existing pheromone.
The amount of pheromone traces was limited to specified number by removing the worst
traces.
The investigations was made with the amount of pheromone trace equal double of amount
of ants in the colony:
m = 2*n (33)
Every ants live in one iteration and they died after updating the pheromone trace. The new
ants are created in another iteration. The time delays of the model (2) are interpreted as a
decision tie inside a way of ants. It is a place where an ant has to decide about next direction
of motion. The direction is randomly chosen with the probability distribution specified by
the pheromone traces. The half of population of ants has disturbed direction:
CijKijnP + MlP) ( 34 )
where:
i  the number of ants
j  the number of parameter  tie
£ijn  the random number with normal distribution, inside the solution space
^ij S  the random number with distribution defined by pheromone trace
(3  a randomly coefficient of ratio of averaging.
164
Automation and Robotics
The ants are looking only for the time delays of a model. The residual parameters of the
model are obtained from SEPNLS during calculation the quality function J. It can be do
because these parameters are linear and SEPNLS works efficiently with them.
6. Simulation example
The algorithm presented in the previous sections has been tested on the MISO example. We
consider the following system (Papliriski, 2007):
y
(t)+ a x y(t)+ a 2 y(t) = b n u x (t  T x )+b 2l u 2 (tr 2 )
(35)
where
ai=3.0; a 2 =4.0; bn=2.0; b 2 i=2.0
H=9.15; T2=2.57;
The inputs and output signals are converted by zeroorderhold operation with sampling
period T=0.05. The prefilter Q(p) with a=0.4 is used. As a input signals are used
independent sequence of uniform distribution between and 1. The signal to measurement
noise ratio SNR is 5%. A data set of 1000 samples was generated for the identification
process. The algorithms are implemented for 250 iterations. The initial values of time delays
t^> are randomly chosen between and 25.
All algorithms, presented in the paper were running 200 times. The GSNLS was used with
variance coefficient ju=10 6 .
The solution space of time delays is multimodal and the global optimum is not reached in
every time. Therefore the percentages of identified time delays, with error les than 10%, can
be treated as a main quality function and they are presented in Fig. 1
120%
]tdl
Itd2
J? J? /" /" tf>* d>*
Fig. 1. The percent of identified time delays n , T2 which are reached global optimum for
SEPNLS, GSNLS and ACO with 4, 6, 10 and 20 ants in the colony
For the SEPNLS the global optimum are reached only at 60% of trials. These results strongly
depend on the initial values, because algorithm can not miss the attraction area of the local
Identification of ContinuousTime Systems with Time Delays by Global Optimization
Algorithms and Ant Colony Optimization
165
minimum. The GSNLS works better, but still more than 16% of solution is bed. The AM
gave the best solution. The results depend on the number of ants in computational colony.
Bigger number of individuals make better accuracy. But even small colony wit 4 ants gave
better results than SEPNLS and GSNLS.
The Table 1 presents the mean value of identified time delay and references standard
deviation. The ACO algorithm gave much better results than SEPNLS and GSNLS. The
augmentation of amount of ants in ACO only little improves obtained results. It confirms
the conclusion obtained from Fig. 1. If we look only for solution laying in the global
optimum, all algorithms give similar accuracy. This is presented in the Table 2.
The amount
of ants
ti
of the plant
tdl
(identified)
t 2
of the plant
td2
(identified)
SEPNLS

9,13
9,88 + 5,02
2,57
7,17 + 8,04
GSNLS

9,13
9,27 + 0,04
2,57
5,22 ± 6,64
ACO
4
9,13
9,26 ± 0,18
2,57
2,66 + 0,18
ACO
6
9,13
9,24 ± 0,07
2,57
2,66 + 0,13
ACO
10
9,13
9,26 + 0,05
2,57
2,67 + 0,11
ACO
20
9,13
9,25 ± 0,04
2,57
2,68 ± 0,08
Table 1. The mean value of identified time delay and references standard deviation
The amount
of ants
ti
of the plant
tdl
(identified)
t 2
of the plant
td2
(identified)
SEPNLS

9,13
9,88 ± 5,02
2,57
7,17 ± 8,04
GSNLS

9,13
9,27 + 0,04
2,57
5,22 + 6,64
ACO
4
9,13
9,26 ± 0,18
2,57
2,66 + 0,18
ACO
6
9,13
9,24 ± 0,07
2,57
2,66 ± 0,13
ACO
10
9,13
9,26 + 0,05
2,57
2,67 + 0,11
ACO
20
9,13
9,25 + 0,04
2,57
2,68 + 0,08
Table 2. The mean value of identified time delay and standard deviation of it for the solution
laying in the global optimum
The time of computation is one of the parameters indicating the performance of iterative
algorithms. These times are presented in the Fig. 2. For the ACO algorithms the time of
computation depends linearly on the amount of ants. For the colony with 12 ants and less,
this time is not bigger than for SEPNLS and GSNLS. For these two last, the time is
166
Automation and Robotics
comparable. The standard deviation of the time of computation is shown in the Fig. 2. The
ACO with a few ants has the smallest deviation of time of computation. For the SEPNLS
and GSNLS the number of repetition in every iteration is variable and depends on indirect
solutions.
1200
1000
800
"aT 600
400
200
SEPNLS GSNLS ACO 4 ACO 6 ACO 10 ACO 20
Fig. 2. The time of computation with standard deviation
7. Conclusion
In this paper a separable nonlinear least squares method is developed for identification of
systems with time delays. The SEPNLS is vulnerable to local minima in the error surface.
The solution depends on the initial values used for identification. The efficiency of this
algorithm is poor.
The GSNLS applies the stochastic approximation to the SEPNLS method. It permits to leave
the attraction area of a local minimum and reach the global optimum. The efficiency of this
algorithm is good.
The ACO has the best performance even for small amount of ants. The algorithm with four
ants is fast and quite good. We obtain solution tree times faster and better than from
SEPNLS and GSNLS The augmentation of amount of ants permits to improve slightly
accuracy of identification of time delay, but the time of identification is increasing linearly
too.
8. References
Agosta W.C. (1992). Chemical communication  the Language of Pheromone. W.H. Freeman and
Company, ISBN 0716750368, New York
Bharth B., Borkar V. S. (1999). Stochastic approximation algorithms: overview and resent
trends. Sadhana, Vol. 24, Parts 4 & 5, pp. 425452, India
Identification of ContinuousTime Systems with Time Delays by Global Optimization
Algorithms and Ant Colony Optimization 1 67
Bonabeau E., M. Dorigo & G. Theraulaz (1999). Swarm Intelligence: From Natural to Artificial
Systems.: Oxford University Press, ISBN 0195131592, New York
Bjorklund S., Ljung L. (2003). A Review of TimeDelay Estimation Techniques Proceedings of
the IEEE Conference on Decision and Control 2003, Vol. 3, pp. 25022507, ISBN: 07803
7925X, Maui, Hawaii, USA
Boukas E. K. (2003). Stochastic output feedback of uncertain timedelay system with
saturing actuators. Journal of optimization theory and applications 2003, Vol. 118, No. 2,
pp. 255273, ISSN 00223239
Chen B.S., Hung J.C. (2001). A global estimation for multichannel timedelay and signal
parameters via genetic algorithm. Signal Processing 2001, Vol. 81 (5), pp. 10611067.
Chen X., Wang M. (2004) Global optimization methods for time delay estimation. Proceedings
of the World Congress on Intelligent Control and Automation (WCICA), Vol. 1 pp. 212
215, ISBN: 0780382730
Harada K., Kobayashi Y., Okita T. (2003). Identification of Linear Systems With Time Delay
and Unknown Order Electrical. Engineering in Japan (English translation of Denki
Gakkai Ronbunshi) 2003, Vol. 145 (3), pp. 6168,
Iemura H., Yang Z., Kanae S., Wada K. (2004). Identification of continoustime systems with
unknow time delays by global nonlinear leastsquares method. IF AC Workshop on
adaptation and lerning in control and signal processing. Yokohama, Japan 2004
Li Z.S., Wan Y.C. (2002). Suboptimal control for plants with pure time delay based on state
feedback. Shanghai Jiaotong Daxue Xuebao/Journal of Shanghai Jiaotong University
2002, Vol. 36 (SUPPL.), pp. 138140.
Paplinski J.P. (2004). An evolutionary algorithm for identification of nonstationary linear
plants with time delay. Proceedings of the First International Conference of Informatics
in Control Automation and Robotics (ICINCO) 2004, Vol. 1 pp. 6469. ISBN 9728865
120
Paplinski J.P., (2007), Identification of continoustime system with time delays by nonlinear
leastsquares method with global optimization elements. Proceedings of the 12 th IEEE
IFAC Internationa Conference Methods and Models in Automation and Robotics
(MMAR), pp 601606, Szczecin, Poland, August 2007, ISBN 9788375180336
Phat V.N., Savkin A.V. (2002) Robust state estimation for a class of uncertain timedelay
systems. Systems and Control Letters 2002, Vol. 47 (3), pp. 237245, ISSN 01676911
Previdi F., Lovera M. (2004). Identification of nonlinear parametrically varying models
using separable least squares. Int. J. Control, 2004, Vol. 77, no. 16, pp. 13821392,
ISSN: 13665820
Shaltaf S. (2004). NeuralNetworkBased TimeDelay Estimation Eurasip Journal on Applied
Signal Processing, 2004, Vol. 3, pp. 378385
Westwick D. T., Kearney R. E. (2001). Separable least squares identification of nonlinear
Hammerstein models: application to stretch reflex dynamics. Annals of Biomedical
Engineering, 2001, Vol. 29, pp. 707718, ISSN 00906964
Yang Z., Hachino T., Tsuji T. (1997). Online identification of continous time delay systems
combining leastsquares techniques with a genetic algorithm. Int. J. Control. 1997,
Vol. 66, No. 1, pp. 2342, ISSN: 13665820
168 Automation and Robotics
Yang Z., Iemura H., Kanae S., Wada K. (2005). A global nonlinear instrumental variable
method for identification of continoustime systems with unknow time delays.
IFAC Wold Congres, Prague, Czech Republic, July 48, 2005
10
Linear Lyapunov ConeSystems
Przemyslaw Przyborowski and Tadeusz Kaczorek
Warsaw University of Technology  Faculty of Electrical Engineering,
Institute of Control and Industrial Electronics,
Poland
1. Introduction
In positive systems inputs, state variables and outputs take only nonnegative values.
Examples of positive systems are industrial processes involving chemical reactors, heat
exchangers and distillation columns, storage systems, compartmental systems, water and
atmospheric pollution models. A variety of models having positive linear behavior can be
found in engineering, management science, economics, social sciences, biology and
medicine, etc.
Positive linear systems are defined on cones and not on linear spaces. Therefore, the theory
of positive systems in more complicated and less advanced. An overview of state of the art
in positive systems theory is given in the monographs (Farina L. & Rinaldi S., 2000;
Kaczorek T., 2001). The realization problem for positive linear systems without and with
time delays has been considered in (Benvenuti L. & Farina L., 2004; Farina L. & Rinaldi
S.,2000; Kaczorek T., 2004a; Kaczorek T., 2006a; Kaczorek T., 2006b; Kaczorek T. & Buslowicz
M, 2004a).
The reachability, controllability to zero and observability of dynamical systems have been
considered in (Klamka J., 1991). The reachability and minimum energy control of positive
linear discretetime systems have been investigated in (Buslowicz M. & Kaczorek T., 2004).
The positive discretetime systems with delays have been considered in (Kaczorek T., 2004b;
Kaczorek T. & Buslowicz M., 2004b; Kaczorek T. & Buslowicz M., 2004c). The controllability
and observability of Lyapunov systems have been investigated by Murty Apparao in the
paper (Murty M.S.N. & Apparao B.V., 2005). The positive discretetime and continuoustime
Lyapunov systems have been considered in (Kaczorek T., 2007b; Kaczorek T. &
Przyborowski P., 2007a; Kaczorek T. & Przyborowski P., 2008; Kaczorek T. & Przyborowski
P., 2007e). The positive linear timevarying Lyapunov systems have been investigated in
(Kaczorek T. & Przyborowski P., 2007b). The continuoustime Lyapunov cone systems have
been considered in (Kaczorek T. & Przyborowski P., 2007c). The positive discretetime
Lyapunov systems with delays have been investigated in (Kaczorek T. & Przyborowski P.,
2007d).
The first definition of the fractional derivative was introduced by Liouville and Riemann at
the end of the 19th century (Nishimoto K., 1984; Miller K. S. & Ross B., 1993; Podlubny I.,
1999). This idea by engineers has been used for modelling different process in the late 1960s
(Bologna M. & Grigolini P., 2003; Vinagre B. M. et al, 2002; Vinagre B. M. & Feliu V., 2002;
Zaborowsky V. & Meylanov R., 2001). Mathematical fundamentals of fractional calculus are
given in the monographs (Miller K. S. & Ross B., 1993; Nishimoto K., 1984; Oldham K. B. &
170 Automation and Robotics
Spanier J, 1974; Podlubny L, 1999; Oustaloup A., 1995). The fractional order controllers have
been developed in (Oldham K. B. & Spanier J., 1974; Oustaloup A., 1993; Podlubny I.,2002).
A generalization of the Kalman filter for fractional order systems has been proposed in
(Sierociuk D. & Dzielinski D., 2006). Some others applications of fractional order systems
can be found in (Ostalczyk P., 2000; Ostalczyk P., 2004a; Ostalczyk P., 2004b; Ferreira
N.M.F. & Machado I.A.T., 2003; Galkowski K., 2005; MoshrefiTorbati M. & Hammond
K.,1998; ReyesMelo M.E. et al, 2004; Riu D. et al, 2001; Samko S. G. et al, 1993; Dzielinski
A. & Sierociuk D., 2006). In (Ortigueira M. D., 1997) a method for computation of the
impulse responses from the frequency responses for the fractional standard (nonpositive)
discretetime linear systems is proposed. The reachability and controllability to zero of
positive fractional systems has been considered in (Kaczorek T.,2007c; Kaczorek T., 2007d).
The reachability and controllability to zero of fractional conesystems has been considered in
(Kaczorek T., 2007e). The fractional discretetime Lyapunov systems has been investigated
in (Przyborowski P., 2008a) and the fractional discretetime conesystems in (Przyborowski
P., 2008b).
The chapter is organized as follows, In the Section 2, some basic notations, definitions and
lemmas will be recalled. In the Section 3, the continuoustime linear Lyapunov conesystems
will be considered. For the systems, the necessary and sufficient conditions for being the
conesystem, the asymptotic stability and sufficient conditions for the reachability and
observability will be established. In the Section 4, the discretetime linear Lyapunov cone
systems will be considered. For the systems, the necessary and sufficient conditions for
being the conesystem, the asymptotic stability, reachability, observability and
controllability to zero will be established. In the Section 5, the fractional discretetime linear
Lyapunov conesystems will be considered. For the systems, the necessary and sufficient
conditions for being the conesystem, the reachability, observability and controllability to
zero and sufficient conditions for the stability will be established. In the Section 6, the
considerations will be illustrated by numerical examples.
2. Preliminaries
Let R be the set of real nxrn matrices ,R = R and let R + be the set of real
nxm matrices with nonnegative entries. The set of nonnegative integers will be denoted
byZ + .
Definition 1.
The Kronecker product A ® B of the matrices A = [a..] e R mx " and B e R pxq is the
block matrix (Kaczorek T.,1998):
A<E>B = [a ij B] i __ 1 _ m eR m ^ (l)
j=\,...,n
Lemma 1.
Let us consider the equation:
AXB = C (2)
where: A G R mxn , B G R qxp , C G R mxp , X G R nxq
Linear Lyapunov ConeSystems
171
Equation (2) is equivalent to the following one:
{A®B T )x = c
(3)
where X := [x 1 X 2 ... xj , C := [q C 2 ... c w ] , and X. and C. are the /th
rows of the matrices Jf and C respectively.
Proof: See (Kaczorek T., 1998)
Lemma 2.
If A [9 A 29 ...A n are the eigenvalues of the matrix A and //j , // 2 , . . . JU n the eigenvalues
of the matrix B , then A. + // for /, j = 1, 2, ..., fl are the eigenvalues of the matrix:
A = A®I+I®B J
n n
Proof: See (Kaczorek T.,1998)
Definition 2.
Pi
Let p =
Pn
: R nxn be nonsingular and p k be the A: th (A: = 1, . . . , ri) its row. The set:
P:= {X(t)eR nxn :np k X.(t)>0
(4)
where X (t) , z = 1, . . . , n is the / th column of the matrix X(t) ,is called a linear cone of the
state variables generated by the matrix P . In the similar way we may define the linear cone
of the inputs:
Q'=\u(t)eR mxn :f]q k U i (t)>0
(5)
generated by the nonsingular matrix Q =
. R'""" and the linear cone of the outputs
V^\Y(t)eR"":r\v t Y l (t)ZO
(6)
generated by the nonsingular matrix V =
v
i_ p j
;R pxp .
172 Automation and Robotics
3. Continuoustime linear Lyapunov conesystems
Consider the continuestime linear Lyapunov system (Kaczorek T. & Przyborowski P.,
2007a) described by the equations:
X(t) = A X(t) + X(t)A x + BU(t) (7a)
Y(t) = CX(t) + DU(t) (7b)
where, X(t) g R mn is the statespace matrix, U(t) g R™" is the input matrix, Y(t) g R pm is
the output matrix, A Q ,A l e R m ,B g R mm , C g R pxn ,D g R pxm .
The solution of the equation (la) satisfying the initial condition X(t Q ) = X Q is given by
(Kaczorek T. & Przyborowski P., 2007a):
X(t) = e^^^^^+je^^BUi^^dr (8)
Lemma 3.
The Lyapunov system (7) can be transformed to the equivalent standard continuoustime,
nm inputs and pn outputs, linear system in the form:
x(t) = Ax(t) + Bu(t) (9a)
y(t) = Cx(t) + Du(t) (9b)
where, x(t) G R n is the statespace vector, u(t) G R nm is the input vector, y(t) G R pn is
the output vector, A G R ,B eR \C gR p ' ,D gR p .
Proof:
The transformation is based on Lemma 1. The matrices X,C/,Fare transformed to the
vectors:
x = [X t X 2 ... X] r ,« = [t/, U 2 ... UJj^Y, Y 2 ... Y p J
where X f r> U i ^Y i denotes the / th rows of the matrices X \ U,Y , respectively.
The matrices of (9) are:
A = (A ®I n +I n ®A l T ),B = B®I n ,C = C®I n ,D = D®I n (10)
3.1 Conesystems
Definition 3.
The Lyapunov system (7) is called (P,Q,V) conesystem if !(/) e P and Y(t) e V for
every X Q g P and for every input [/(/) € Q , t ^ t .
Linear Lyapunov ConeSystems 1 73
Note that for P = R + nxn , Q = R + mxn , V = R + pxn we obtain (R + nxn , R + mxn , 7?/ x " ) cone system
which is equivalent to the positive Lyapunov system (Kaczorek T. & Przyborowski P.,
2007c).
Theorem 1.
The Lyapunov system (7) is (P,Q,V) conesystem if and only if :
\=P\P\\=A X (11)
are the Metzler matrices and
B = PBQ 1 e R m , C = VCP 1 e R p + xn , D = VDQ 1 e R p + xm . (12)
Proof:
Let:
1(0 = PX(t% U(t) = QU(t), Y(t) = VY(t) (13)
From definition 2 it follows that if X(t) g P then X(t) g 7?"*" , if U(t) g Q then
£/<7) g iT x " , and if 7(0 g V then 7(0 e <" .
From (7) and (13) we have:
WA_l_ PWA J _l VT2TT(+\ — T> A P _1 VYA _i_ PP" 1 VYA J _l
(14a)
x(0 = PX(t) = PA x (t) + ^(04 + iW(* ) = PA^r l x{t) + pp l x(t)A x +
+PBQ l U{t) = A^X{t) + X(04 + 5C/(0
and
7(0 = K7(0 = KCXX0 + FDC/(0 = VCP l Jt(t) + VDQ l U(t) = CX(t) + £>£>(0 (14b)
It is known (Kaczorek T. & Przyborowski P., 2007a) that the system (14) is positive if and
only if the conditions (11) and (12) are satisfied. □
3.2 Asymptotic stability
Consider the autonomous Lyapunov (P,Q,V) conesystem:
X{t) = A,X{t) + X(t)A x , X(t ) = X (15)
where, X(t) g P and PA Q P~ , A { G R nxn are the Metzler matrices.
Definition 4.
The Lyapunov (P,Q,V) conesystem (15) is called asymptotically stable if:
limX(0 = for every X Q g P
174 Automation and Robotics
Theorem 2.
Let us assume that \ , X 2 , . . . A n are the eigenvalues of the matrix A Q and ju l9 JU 2 ,...JU
the eigenvalues of the matrix A l . The system (15) is stable if and only if:
Re(/t z +// 7 )<0 for i,7 = 1,2,...,/i (16)
Proof:
The theorem results directly from the theorem for asymptotic stability of standard systems
(Kaczorek T., 2001), since by Lemma 2 eigenvalues of matrix A are the sums of
eigenvalues of the matrices A^ and A l . □
3.3 Reachability
Definition 5.
The state X e P of the the Lyapunov (P,Q,V) conesystem (7) is called reachable at time
t r , if there exists an input U(t) e Q for t E [t Q9 t f ], which steers the system from the
initial state X Q = to the state X ' , .
Definition 6.
If for every state X e P there exists t, > t Q , such that the state is reachable at time t, ,
then the system is called reachable.
Theorem 3.
The (P,Q,V) conesystem (7) is reachable if the matrix:
R f :=]e PA ^ (, ^\PBQ')(PBQ') T e (PA ^ )T(t ^ ) dT (17)
is a monomial matrix (only one element in every row and in every column of the matrix is
positive and the remaining are equal to zero).
The input, that steers the system from initial state X Q = to the state X f is given by:
U(i) = Q l [(PBQ l ) T e (PA ° P } ^Br'PX f e A{t ~ tf) ] (18)
iorte[t ,t f ].
v
Proof:
1 r%nxn
If R f is the monomial matrix, then there exists R f G R" "and the input (18) is well
defined.
Using (8) and (18) we obtain:
Linear Lyapunov ConeSystems 1 75
X(t f ) = p\\e P ^^ T \PBQ l ){PBQ 1 ) 2 ^ e^^^R^PX/^e^^dr] =
<o (19)
= P^e PApl(tf ~ T \PBQ 1 )(PBQ l ye (PAoPV
MTt f ) Mt f T) j
since e e — l n . u
3.4 Dual Lyapunov conesystems
Definition 7.
The Lyapunov system described by the equations:
X(f) = A T X(t) + X(t)A T + C T U(t) (20a)
Y(t) = B T X(t) + DU{f) (20b)
is called the dual system with respect to the system (7). The matrices A Q ,A l ,B,C,D,
X(t), U(t), Y(t) are the same as in the system (7).
3.5 Observability
Definition 8.
The state X Q of the Lyapunov (P,Q,V) cone system (7) is called observable at time
t f > , if X Q can be uniquely determined from the knowledge of the output Y(t) and
input U(t) for t e[0,t ].
Definition 9.
The Lyapunov (P,Q,V)cone system (7) is called observable, if there exists an instant
t f > , such that the system (7) is observable at time t , .
Theorem 4.
The Lyapunov (P,Q,V) conesystem (7) is observable if the dual system (20) is reachable
i.e. if the matrix:
0f := )e {P ^ )T{ '' T \VCP l )\VCP l )e^ plt, ' T) dT (21)
is a monomial matrix.
Proof:
The Lyapunov (P,Q,V) conesystem (7) is observable if and only if the equivalent standard
system (9) is observable and this implies that dual system with respect to the system (9) must
be reachable thus the dual system (20) with respect to the system (7) also must be reachable.
Using Theorem 3. we obtain the hypothesis of the Theorem 4. □
176 Automation and Robotics
4. Discretetime linear Lyapunov conesystems
Consider the discretetime linear Lyapunov system (Kaczorek T., 2007b; Kaczorek T. &
Przyborowski P., 2007e; Kaczorek T. & Przyborowski P., 2008) described by the equations:
X M =A X i +X i A,+BU i (22a)
Y.=CX.+DU i (22b)
where, X. e R is the statespace matrix, U. e R is the input matrix, Y. e R pxn is the
output matrix, A , A y e R" x " ,B e R" xm ,C e R pm ,D e R pxm ,ieZ + .
The solution of the equation (22a) satisfying the initial condition X is given by (Kaczorek
T.,2007b):
X i = V 4X 4* +Y V J  4BU t , x A[\i e Z + (23)
Lemma 4.
The Lyapunov system (22) can be transformed to the equivalent standard discretetime,
nm inputs and pn outputs, linear system in the form:
x i+1 = Ax t + Bu . (24a)
y^CXi +Du t (24b)
where, X. G R n is the statespace vector, u. G R nm is the input vector, y. G R pn is the
— 7 n« xn 77 j»n x(nm) 77 r%(pn)xn 77 r%( pn)x(nm) • r 7
output vector, iei? ,B eR \ C e R ,DeR KP \ieZ + .
Proof:
The proof is similar to the one of Lemma 3.
The matrices of (24) have the form:
A = (A ®I H +I n ®4 r ),B = B®I n ,C = C®I n ,D = D®I n (25)
4.1 Conesystems
Definition 10.
The Lyapunov system (22) is called (P,Q,V) conesystem if X e P and Y e V for
every X Q e P and for every input £/. e Q , / E Z + .
Note that for P = R + nxn , Q = R + mxn , V = £/ x " we obtain (R + nxn , 7? + wx " , 7?/ x " ) cone system
which is equivalent to the positive Lyapunov system (Kaczorek T., 2007b).
Linear Lyapunov ConeSystems 1 77
Theorem 5.
The Lyapunov system (22) is (P,Q,V) conesystem if and only if :
i = PA.P 1 = [«;;} =1 ,...,„ ,4=4= [4}=i,..,« ( 26 )
j=l,...,n j=l,...,n
are the Metzler matrices satisfying
<5^ + a n > /or every k, I = 1, . . . , n (27)
and
B = PBQ 1 g R n + xm , C = VCP 1 g R p + xn , D = VDQ 1 g R p ™ (28)
Proof:
Let:
X t =PX t , U i ^QU i J i ^VY i (29)
From definition 2 it follows that if X . g P then X G /Jf , if U gQ then [7 G TT*" ,
and if 7 g V then 7 G i?**" .
From (22) and (29) we have:
X M = PX i+l = PA X i + PX4 + iW, = i^P" 1 !,. + i^" 1 ^ + (30a)
+PBQ l U i = A d Jt i + X.^ + if/,
and
7 = K7 = FCX + VDU t = VCP l X + VDQ l U i = CX + D^ (30b)
The Lyapunov system (30) is positive if and only if, the equivalent standard system is
positive. By the theorem for the positivity of the standard discretetime systems, the
matrices (A Q <g> I n +I n <g> A?),(B <8> /J ,(C®/J ,(D®IJ have to be the matrices
with nonnegative entries , so from (30) follows the hypothesis of the Theorem 5. □
4.2 Asymptotic stability
Consider the autonomous Lyapunov (P,Q,V) conesystem:
X^^X+X.4 (31)
where, X e P, i G Z .
Definition 11.
The Lyapunov (P,Q,V) conesystem (15) is called asymptotically stable if:
limX = for every X g P
178 Automation and Robotics
Theorem 6.
Let us assume that A i9 A 29 ...A n are the eigenvalues of the matrix A Q and /U x , /U 2 , . . . /J n
the eigenvalues of the matrix A l . The system (31) is stable if and only if:
/l. + jUj  < 1 for i, j = l,2,...,n (32)
Proof:
The theorem results directly from the theorem for asymptotic stability of standard systems
(Kaczorek T., 2001), since by Lemma 2 eigenvalues of matrix A are the sums of
eigenvalues of the matrices A^ and A 1 . □
4.3 Reachability
Definition 12.
The Lyapunov (P,Q,V) conesystem (22) is called reachable if for any given X e P there
exist q E Z + ,q > and an input sequence U e Q, # = 0, 1, . . . , q  1 that steers the state
of the system from X Q = to X , , i.e. X = X , .
Theorem 7.
The Lyapunov (P,Q,V) conesystem (22) is reachable:
a) For v4j satisfying the condition Jl/^ = A X X , i.e. ^4j = ClI n ,(2 E i? , if and only if the
matrix:
R„=[PBQ~ l MPBQ 1 )  ^'(rag 1 )] (33)
contains /2 linearly independent monomial columns, v^ = PA Q P + ^ .
b) For A x ^ al n , a E i? , if and only if the matrix PBQ contains fl linearly independent
monomial columns.
Proof:
From (26), (28), (29) and from the definitions 2 and 12, we have that the discretetime
Lyapunov (P,Q,V) conesystem (22) is reachable if and only if the positive discretetime
Lyapunov system, with the matrices A Q ,A l ,B,C,D , is reachable  so from the theorem
for the reachability of positive discretetime Lyapunov systems (Kaczorek T. &
Przyborowski P., 2007e; Kaczorek T. & Przyborowski P., 2008) follows the hypothesis of the
theorem 7. □
4.4 Controllability to zero
Definition 13.
The Lyapunov (P,Q,V) conesystem (22) is called controllable to zero if for any given
nonzero X Q e P there exist q E Z + , q > and an input sequence
U. e Q, q = 0, 1, . . . , q  1 that steers the state of the system from J Q to J = X = .
Linear Lyapunov ConeSystems 1 79
Theorem 8.
The Lyapunov (P,Q,V) conesystem (22) is controllable to zero:
2
a) in a finite number of steps (not greater than n ) if and only if the matrix
(PA Q P ®I n +I n ®A x ) is nilpotent, i.e. has all zero eigenvalues.
b) in an infinite number of steps if and only if the system is asymptotically stable.
Proof:
From (26), (28), (29) and from the definitions 2 and 13, we have that the discretetime
Lyapunov (P,Q,V) conesystem (22) is controllable to zero if and only if the positive
discretetime Lyapunov system, with the matrices A Q , A l , B, C, D , is controllable to zero 
so from the theorem for the controllability to zero of positive discretetime Lyapunov
systems (Kaczorek T. & Przyborowski P., 2007e; Kaczorek T. & Przyborowski P., 2008)
follows the hypothesis of the theorem 8. □
Lemma 5.
If the matrices PA Q P~ l and A x are nilpotent then the matrix (PA Q P~ l ®I n +I n ® A* ) is
also nilpotent with the nilpotency index V < 2n .
Proof: See (Kaczorek T. & Przyborowski P, 2008).
4.5 Dual Lyapunov conesystems
Definition 14.
The Lyapunov system described by the equations:
X i+l =4X i +X i A 1 T +C T U i (34a)
Y i =B T X i +DU i (35b)
is called the dual system respect to the system (22). The matrices A ,A { ,B,C,D,
X. ,U. 9 Y are the same as in the system (22).
4.6 Observability
Definition 15.
The Lyapunov (P,Q,V) conesystem (22) is called observable in q steps, if X Q can be
uniquely determined from the knowledge of the output Y. and U. = 0, i G Z + for
i g [0, q] .
Definition 16.
The Lyapunov (P,Q,V) conesystem (22) is called observable, if there exists a natural
number q > 1 , such that the system (22) is observable in q steps.
Theorem 9.
The Lyapunov (P,Q,V) conesystem (22) is observable:
a) For A x satisfying the condition XA x  A X X , i.e. A x = al n , a e R , if and only if the matrix:
180
Automation and Robotics
O =
VCP
(vcp~ l )Z
(33)
_{VCP~ l )A nl
contains fl linearly independent monomial rows, A Q = PA Q P + A { .
b) For A { ^ al n , a G 7? , if and only if the matrix VCP contains fl linearly independent
monomial rows.
Proof:
From (26), (28), (29) and from the definitions 2 and 15, we have that the discretetime
Lyapunov (P,Q,V) conesystem (22) is observable if and only if the positive discretetime
Lyapunov system, with the matrices A Q , A x , i?, C, D , is observable  so from the theorem
for the observability of positive discretetime Lyapunov systems (Kaczorek T. &
Przyborowski P., 2007e; Kaczorek T. & Przyborowski P., 2008) follows the hypothesis of the
theorem 9. □
5. Fractional discretetime linear Lyapunov conesystems
Consider the fractional discretetime linear Lyapunov system (Przyborowski P., 2008a;
Przyborowski P., 2008b) described by the equations:
A N X. , =A n X.+X.A+BU.
i+\ i i I i
Y =CX +DU
(34a)
(34b)
where, X { e R" x " is the statespace matrix, U j e R ml " is the input matrix, Z e R px " is the
output matrix, A^ , 4 e R" x " , B e R mm ,CeR px ",De R pxm ,ieZ + and
1 x^
a^=tVZ(D
7=0
(N
X i
( N )
1 for y =
N(Nl)(Nj + l)
7!
for 7=1,2,...
is the GriinwaldLetnikov A^ order (N G R,0 < N <1) fractional difference, and h is the
sampling interval.
The equations (34) can be written in the form:
7=1 V J J
Y =CX +DU
(35a)
(35b)
Linear Lyapunov ConeSystems 181
Lemma 6.
The fractional Lyapunov system (34) can be transformed to the equivalent fractional
discretetime, nm inputs and pn outputs, linear system in the form:
A N x i+l =Ax i +Bu i (36a)
y i =Cx i +Du i (36b)
where, X. E R n is the statespace vector, u. E R nm is the input vector, y E R pn is the
A r%n xn r> r%n x(nm) s~i r%(pn)xn r\ r»( pn)x(nm) • rw
output vector, A e R ,BeR \ C e R ,DeR KP)K \ieZ + .
Proof:
The proof is similar to the one of Lemma 3.
The matrices of (36) have the form:
A = (A ®I n +I n ®4 i T ),B = B®I n ,C = C®I n ,D = D®I n (37)
5.1 Conesystems
Definition 17.
The fractional Lyapunov system (22) is called (P,Q,V) conesystem if X e P and Y e V
for every X Q e P and for every input U e Q , i E Z + .
Note that for P = iT x " , Q = 7T xw , V = R + pxn we obtain (R + nxn , 7? + m> " , R + pxn ) cone system
which is equivalent to the fractional positive Lyapunov system (Przyborowski P., 2008a).
Theorem 10.
The fractional Lyapunov system (34) is (P,Q,V) conesystem if and only if :
4> = PAP' 1 = [«;],=!,..,» ,4 = 4= [K }=i..., ( 38 )
7=1,... ,« 7=1,... ,n
are the Metzler matrices satisfying
a^t+aJ+iV r >0 for every kj = l,...,n (39)
and
5 = Ptfg 1 e 7T xw , C = FCP" 1 e 7?f * , Z) = rag" 1 e yT xw (40)
Proof:
Let:
1. = PX., £/. = £>[/., 7 = VY i (41)
From definition 2 it follows that if X e P then X. E i?"*" , if [/eQ then U E iT*" ,
and if r e V then t 6 #f " •
182
Automation and Robotics
From (34) and (41) we have:
7=1 V J J 7=1 V J J
px m+x =
■■ PA X i + PX t A x + PBU t = PA P~ 1 X j + PP x X t A x + PBQ~ X IJ t
■ A\ ) X i +X i A 1 +BU i
and
(41a)
Y. = VY i = VCX. + VDU. = VCP x X i + VDQ l U i = CX. + DU i (42b)
It is known (Przyborowski P., 2008a) that the system (34) is positive if and only if the
conditions (41a) and (42b) are satisfied. □
5.2. Stability
Consider the autonomous fractional Lyapunov (P,Q,V) conesystem:
A^X^X+X^ ( 43 )
where, X e P, i G Z .
Definition 18. (Dzielinski A. & Sierociuk D., 2006)
The fractional Lyapunov (P,Q,V) cone system (43) is called stable in finite relative time if
for <2,/?e R + , a<P, a,/?<oo, k = l 9 ...,n; M,NeZ + :
implies
p* <a for / = 0,1,..., TV
\\X* \\<J3 for z = 0,l,...,M
where X. is the k th column of the matrix X. .
Theorem 11.
The fractional Lyapunov (P,Q,V) cone system (34) is stable in the meaning of the
definition 18 if:
A + I 2 n\\ + Y
II II t—l
7=2
iiy
<1
(44)
where A — A ® / +/ ® A, and \\W\\ denotes the norm of the matrix W , defined as
n n 1   '
max \AA, where X l is the / th eigenvalue of the matrix W .
Proof:
The theorem results directly from the theorem of asymptotic stability of standard fractional
systems (Dzielinski A. & Sierociuk D., 2006). □
Linear Lyapunov ConeSystems 183
5.3 Reachability
Definition 19.
The fractional Lyapunov (P,Q,V) conesystem (34) is called reachable if for any given
X e P there exists q E Z + ,q > and an input sequence U. e Q, q = 0,l,...,q — 1 that
steers the state of the system from J Q = to X , , i.e. J — X f .
Theorem 12.
The fractional Lyapunov (P,Q,V) conesystem (34) is reachable:
a) For A l satisfying the condition XA X — A x X , i.e. A x = al n , <2 E R , if and only if the
matrix:
R n =[PBQ\ (A +I n N)PBQ l ~\ (45)
contains n linearly independent monomial columns, A^ = PA^P + A x .
b) For A l ^ Cll n , Ci E R , if and only if the matrix PBQ contains fl linearly independent
monomial columns.
Proof:
From (38), (39), (40) and from the definitions 2 and 19, we have that the fractional discrete
time Lyapunov (P,Q,V) conesystem (34) is reachable if and only if the fractional positive
discretetime Lyapunov system, with the matrices A Q , A l , 5, C, D , is reachable  so from
the theorem for the reachability of positive discretetime Lyapunov systems (Przyborowski
P.,2008a). follows the hypothesis of the theorem 12. □
5.4 Controllability to zero
Definition 20.
The fractional Lyapunov (P,Q,V) conesystem (34) is called controllable to zero if for any
given nonzero X Q e P there exist q E Z + , q > and an input sequence
U. e Q, q = 0, 1, . . . , q  1 that steers the state of the system from X to X = X f = .
Theorem 13.
The fractional Lyapunov (P,Q,V) conesystem (34) is controllable to zero if and only if
q = 2 and:
PA P l ®I n +I n ®A x T +(I n N)®I n = (46)
Proof:
From (38), (39), (40) and from the definitions 2 and 19, we have that the fractional discrete
time Lyapunov (P,Q,V) conesystem (34) is controllable to zero if and only if the
fractional positive discretetime Lyapunov system, with the matrices A Q ,A l ,B,C,D, is
controllable  so from the theorem for the controllability of positive discretetime Lyapunov
systems (Przyborowski P., 2008a). follows the hypothesis of the theorem 13. □
184
Automation and Robotics
5.5 Dual fractional Lyapunov conesystems
Definition 21.
The fractional Lyapunov system described by the equations:
A N x i+l = 4x i+ xX^c T u t
(47a)
Y i =B T X i +DU i (47b)
is called the dual system respect to the system (34). The matrices A Q ,A X ,B,C,D,
X. ,U i9 Y. are the same as in the system (34).
5.6 Observability
Definition 22.
The fractional Lyapunov (P,Q,V) conesystem (34) is called observable in q steps, if X Q can
be uniquely determined from the knowledge of the output Y. and U. = 0, i G Z + for i g [0, q] .
Definition 23.
The fractional Lyapunov (P,Q,V) conesystem (34) is called observable, if there exists a
natural number q > 1 , such that the system (34) is observable in q steps.
Theorem 14.
The fractional Lyapunov (P,Q,V) conesystem (34) is observable:
a) For A x satisfying the condition XA x = A x X , i.e. A x = al n , a e R , if and only if the matrix:
o =
(48)
VCP~ l
VCP\A,+I n N)
contains n linearly independent monomial rows, A Q = PA Q P + A l .
b) For A l ^ al n , a e R , if and only if the matrix VCP contains n linearly independent
monomial rows.
Proof:
From (38), (39), (40) and from the definitions 2 and 20, we have that the fractional discrete
time Lyapunov (P,Q,V) conesystem (34) is controllable to zero if and only if the
fractional positive discretetime Lyapunov system, with the matrices A^,A X ,B,C,D, is
observable  so from the theorem for the observability of positive discretetime Lyapunov
systems (Przyborowski P., 2008a). follows the hypothesis of the theorem 14. □
6. Examples
Consider the state, input and output cones generated by the matrices
P =
"1 2"
,Q =
"l o"
,K =
"l o"
_ 1 lj
L° !j
L° l \
(49)
Linear Lyapunov ConeSystems
185
6.1 Example 1
Consider the continuoustime Lyapunov system (7) with the matrices
A =
i
3
~7
_2
4
5_
i
A =
_c
4
1_
1
,B = 
3
"1 2
_ 1 1_
c =
_ 1
2 4~
1_
,D
=
"o
0~
0_
This system is (P,Q,V) conesystem with P, Q and V defined by (49) since:
A =
A =
~l 2"
1
1 1
3
"4 0"
1
7 4
2 5
1 2
1 1
1
3
are the Metzler matrices and
B
C =
D =
~l 2
" 1
~l
2
"l
0"
1
"l
0"
1 1
3
_ 1 1_
1_
1_
"l o"
"2 4
\\ 2~
1
"2 0"
1_
_ 1 1
I l l 
1_
"l o~
"o o]
"l o~
1
"o o"
1_
oj
1
0_
(50)
are matrices with nonnegative entries.
A Q has the eigenvalues: /^ =— 1,^ 2 = ~~ ^ an< ^ 4 nas * ne eigenvalues: ju x =—4,
jU 2 = — 1 therefore the system is asymptotically stable, since all the sums of the
eigenvalues:
(4 +#) = 5, (^ +// 2 ) = 2, (A> +/0 = 7, (1 2 +// 2 ) = 4
have negative real parts.
For this system the reachability matrix
R f = \
(tf+rf
4e
3(t f +z) 2
dr
186
Automation and Robotics
and the observability matrix
°f=\
4e ( ^ }
dr
are the monomial matrices for every t f > . Therefore, the system is reachable and
observable.
6.2 Example 2
Consider the discretetime Lyapunov system (22) with the matrices
(50)
A =
"0.3 0.2"
0.1 0.2_
,A =
"0.2 "
_ ° ° 5 _
4
"1 2"
1 1
c =
"2 4"
1 1
,D =
"0 0"
This system is (P,Q,V) conesystem with P, Q and V defined by (49) since:
1 2
1 1
0.3 0.2"
"1 2"
1
"0.1
"
,A,=
o.i 0.2J
_1 1
[
0.4J
0.2
0.5
are the Metzler matrices satisfying conditions:
a" + a [ n = 0.3 + 0.2 = 0.5 > 0, a° 22 + a\ x = 0.2 + 0.2 = 0.4 >
«n + «L = ° 3 + ° 5 = ° 8 > 0. «2°2 + ^22 = ° 2 + ° 5 = 0.7 >
and
B =
"1 2"
1 1
" 1
3
"1
1
2"
1_
"1
0"
1_
1
"1
0"
1
,c =
"1 0"
1_
"2 4"
_ 1 1_
"1 2"
1 1
1
"2 0"
1_
"1 0"
"0 0"
"1 0"
1
"0 0"
1_
0_
1
D
are matrices with nonnegative entries.
Aq has the eigenvalues: /^ =0.1,/1 2 =0.4 and A l has the eigenvalues: ju x =0.2,
// 2 =0.5 therefore the system is asymptotically stable, since all the eigenvalues:
(4 + Ml ) = 0.3, (A L +ju 2 ) = 0.6, (A 2 +ju x ) = 0.6, (A 2 +ju 2 ) = 0.9
have moduli less than one.
Linear Lyapunov ConeSystems
187
The system is reachable and observable because the matrix PBQ has n = 2 monomial
columns, and the matrix VCP has n = 2 monomial rows.
The system is not controllable to zero in finite number of steps since the matrix
(PA P l ®I n +I n ®A l T ) =
0.3
0.6
0.6
0.9
is not a the nilpotent matrix, but the system is controllable to zero in the infinite number of
steps since it is asymptotically stable.
6.3 Example 3
l
Consider the discretetime Lyapunov system (34) with N = — and the matrices
4
0.5
0.8"
<4 =
0.6
0.9 _
0.17
,B =
1
0.4^
1
2
3
3
1
1
3
3
(51)
C
~2
4~
,D =
"o o"
_ 1
1_
L° °J
(» = 2)
This system is (P,Q,V) conesystem with P, Q and V defined by (49) since:
A
0.3 2
0.1
.4
0.17
"
, B =
"1 0"
,c =
"2 0"
, D =
"0 0"
1
0.4J
L° i \
L° i \
L° °J
The system is (P,Q,V) conesystem because:
a° n +a l n +N = 0.3 + 0.17 + 0.25 = 0.72 >0 9 a% 2 +a{ l + N = 0.1 + 0.17 + 0.25 = 0.52 >0
a° n + a 22 + N = 0.3 + 0.4 + 0.25 = 0.95 >0,a° 22 +a\ 2 + N = 0.1 + 0.4 + 0.25 = 0.75 >0
and the matrices B,C,D have nonnegative entries.
For the instant i = 1 00 we have
\\ A +I H > N \ + H
7=2
(D'
(N\
\J J
= 0.8268 < 1
so the system is stable in the meaning of the the definition 18.
188
Automation and Robotics
0.52
0.95
0.75
The system is reachable and observable because the matrix PBQ has n = 2 monomial
columns, and the matrix VCP has n = 2 monomial rows.
The system is not controllable to zero in finite number of steps since the matrix
"0.72
(PAP~ ®I + / ®A + (/ N) <g> / ) :
is not a zero matrix.
7. Conclusions
In this paper three types of systems have been considered. For the continuoustime linear
Lyapunov conesystems, the necessary and sufficient conditions for being the conesystem,
the asymptotic stability and sufficient conditions for the reachability and observability have
been be established. For the discretetime linear Lyapunov conesystems, the necessary and
sufficient conditions for being the conesystem, the asymptotic stability, reachability,
observability and controllability to zero have been established. For the fractional discrete
time linear Lyapunov conesystems, the necessary and sufficient conditions for being the
conesystem, the reachability, observability and controllability to zero and sufficient
conditions for the stability have been established. The considerations have been illustrated
on the numerical examples.
8. References
Benvenuti L. & Farina L. (2004). A tutorial on positive realization problem, IEEE Trans.
Autom. Control vol. 49, No 5, pp. 651664.
Bologna M. & Grigolini P. (2003). Physics of Fractal Operators. Springer Verlag, New York.
Buslowicz M. & Kaczorek T. (2004). Reachability and minimum energy control of positive
linear discretetime systems with one delay, Proceedings of 12th Mediterranean
Conference on Control and Automation, June 69, Kusadasi, Izmir, Turkey.
Dzieliriski A. & Sierociuk D.. Stability of discrete fractional order statespace systems.,
Proceedings of 2nd IFAC Workshop on Fractional Differentiation and its Applications.
IFACFDA'06.
Farina L. & Rinaldi S. (2000). Positive Linear Systems; Theory and Applications, J. Wiley, New
York.
Ferreira N.M.F. & Machado I.A.T.(2003). Fractionalorder hybrid control of robotic
manipulators. Proceedings of 11th Int. Conf. Advanced Robotics, ICAR'2003, Coimbra,
Portugal, pp. 393398.
Galkowski K. (2005). Fractional polynomials and nD systems. Proceedings of IEEE Int. Symp.
Circuits and Systems, ISCAS'2005, Kobe, Japan.
Kaczorek T. (1998). Vectors and Matrices in Automation and Electrotechnics, Wydawnictwo
NaukowoTechniczne, Warszawa (in Polish).
Kaczorek T. (2001). Positive ID and 2D systems, Springer Verlag, London.
Linear Lyapunov ConeSystems 189
Kaczorek T. (2004a). Realization problem for positive discretetime systems with delay,
Systems Science, vol. 30, No. 4, pp.117130.
Kaczorek T. (2004b). Stability of positive discretetime systems with timedelay, Proceedings
of The 8th World MultiConference on Systemics, Cybernetics and Informatics, July 18
21, Orlando, Florida, USA.
Kaczorek T. (2006a). Realization problem for positive multivariable discretetime linear
systems with delays in the state vector and inputs, Int. J. Appl. Math. Comp. Sci., vol.
16, No. 2, pp. 101106.
Kaczorek T. (2006b). A realization problem for positive continuoustime systems with
reduced number of delays, Int. J. Appl. Math. Comp. Sci. , vol. 16, No. 3, pp. 101117.
Kaczorek T. (2007a). New reachability and observability tests for positive linear discrete
time systems, Bull. Pol. Acad. Sci. Techn. vol. 55, No. 1.
Kaczorek T. (2007b). Positive discretetime linear Lyapunov systems, Proceedings of The 15th
Mediterranean Conference of Control and Automation  MED 2007, 2729 June, Athens.
Kaczorek T. (2007c). Reachability and controllability to zero of positive fractional discrete
time systems, Machine Intelligence and Robotics Control, vol. 6, No. 4, 2007.
Kaczorek T. (2007d). Reachability and controllability to zero tests for standard and positive
fractional discretetime systems, Submitted to Journal European Systems Analysis.
Kaczorek T. (2007e). Reachability and controllability to zero of cone fractional linear
systems, Archives of Control Sciences, vol. 17, 2007, No.3, pp. 357367.
Kaczorek T. & Buslowicz M. (2004a). Minimal realization problem for positive multivariable
linear systems with delay, Int. J. Appl. Math. Comp. Sci., vol. 14, No. 2, pp. 181187.
Kaczorek T. & Buslowicz M. (2004b). Recent developments in theory of positive discrete
time linear systems with delays  stability and robust stability, Pomiary, Automatyka,
Kontrola, No 9, pp. 912
Kaczorek T. & Buslowicz M. (2004c). Recent developments in theory of positive discrete
time linear systems with delays  reachability, minimum energy control and
realization problem. Pomiary, Automatyka, Kontrola, No 9, pp. 1215.
Kaczorek T. & Przyborowski P. (2007a). Positive continuestime linear Lyapunov systems,
Proceedings of The International Conference on Computer as a Tool EUROCON 2007, 9
12 September, Warsaw , pp. 731737.
Kaczorek T. & Przyborowski P. (2007b). Positive continuoustime linear timevarying
Lyapunov systems, Proceedings of The XVI International Conference on Systems
Science, 46 September 2007, Wroclaw  Poland , vol. I, pp. 140149.
Kaczorek T. & Przyborowski P. (2007c). Continuoustime linear Lyapunov conesystems,
Proceedings of The 13th IEEE IF AC International Conference on Methods and Models in
Automation and Robotics, 27  30 August 2007, Szczecin  Poland, pp. 225229.
Kaczorek T. & Przyborowski P. (2007d). Positive discretetime linear Lyapunov systems
with delays, Proceedings of The International Workshop "Computational Problems of
Electrical Engineering September 14th16th, 2007, Wilkasy, Poland, Electrical Review
(Przeglqd Elektrotechniczny), 2k/2007, pp. 1215.
Kaczorek T. & Przyborowski P. (2007e). Positive linear Lyapunov systems, FNAANS
International Journal  Problems Of Nonlinear Analysis In Engineering Systems Journal,
No.2(28), vol.13, 2007, pp. 3560.
Kaczorek T. & Przyborowski P. (2008) Reachability, controllability to zero and observability
of the positive discrete time Lyapunov systems, Submitted to The Control and
Cybernetics Journal.
Klamka J. (1991). Controllability of dynamical systems, Kluwer Academic Publ. Dordrcht.
Miller K. S. & Ross B. (1993). An Introduction to the Fractional Calculus and Fractional
Differential Equations. Willey, New York.
190 Automation and Robotics
MoshrefiTorbati M. & Hammond K. (1998). Physical and geometrical interpretation of
fractional operators,. /. Franklin Inst, Vol. 335B, no. 6, 1998, pp. 10771086.
Murty M.S.N. & Apparao B.V. (2005). Controllability and observability of Lyapunov
systems, Ranchi University Mathematical Journal, vol. 32, pp. 5565.
Nishimoto K. (1984). Fractional Calculus. Koriyama: Decartes Press.
Oldham K. B. & Spanier J. (1974). The Fractional Calculus. New York: Academic Press.
Ortigueira M. D. (1997). Fractional discretetime linear systems, Proceedings of the IEE
ICASSP 97, Munich, Germany, IEEE, New York, vol. 3, 22412244.
Ostalczyk P. (2000). The noninteger difference of the discretetime function and its
application to the control system synthesis. Int. J. Syst, Sci. vol. 31, no. 12, pp. 1551
1561.
Ostalczyk P. (2004a). FractionalOrder Backward Difference Equivalent Forms Part I 
Horner's Form. Proceedings of 1st IFAC Workshop Fractional Dijferentation and its
Applications, FDA'04, Enseirb, Bordeaux, France, pp. 342347.
Ostalczyk P. (2004b). FractionalOrder Backward Difference Equivalent Forms Part II 
Polynomial Form. Proceedings of 1st IFAC Workshop Fractional Differentation and its
Applications, FDA'04, Enseirb, Bordeaux, France, pp. 348353.
Oustaloup A. (1993). Commande CRONE. Paris, Hermes.
Oustaloup A. (1995). La derivation non entiere. Paris: Hermes.
Podlubny I. (1999). Fractional Differential Equations. San Diego: Academic Press.
Podlubny I. (2002). Geometric and physical interpretation of fractional integration and
fractional differentation. Fract. Calc. Appl. Anal. Vol. 5, no. 4, 2002, pp. 367386.
Podlubny I., Dorcak L., Kostial I. (1997). On fractional derivatives, fractionalorder systems
and PIA.D (^controllers. Proceedings of 36th IEEE Conf. Decision and Control, San
Diego, CA, 1997, pp. 49854990.
Przyborowski P. (2008a). Positive Fractional Discretetime Lyapunov Systems, Archives of
Control Sciences, vol.l8(LIV), 2008, No. 1, pp. 518.
Przyborowski P. (2008b). Fractional discretetime Lyapunov conesystems, Electrical Review
(Przeglad Elektrotechniczny), 5/2008, pp. 4752.
ReyesMelo M.E., Martinez Vega J.J., GuerreroSalazar C.A., OrtizMendez U. (2004).
Modelling and relaxation phenomena in organic dielectric materials. Application of
differential and integral operators of fractional order. /. Optoel. Adv. Mat. Vol. 6, no.
3, 2004, pp. 10371043.
Riu D., Retiere N., Ivanes M. (2001). Turbine generator modeling by noninteger order
systems. Proceedings of IEEE Int. Electric Machines and Drives Conference, IEMDC
2001, Cambridge, MA, 2001, pp. 185187.
Samko S. G., Kilbas A. A., Maritchev O.I. (1993). Fractional Integrals and Derivative. Theory and
Applications. London: Gordon&Breach.
Sierociuk D. & Dzielinski D. (2006). Fractional Kalman filter algorithm for the states,
parameters and order of fractional system estimation. Int. J. Appl. Math. Comp. Sci.,
2006, vol. 16, no. 1, pp. 129140.
Vinagre B. M., Monje C. A., Calderon A.J. (2002). Fractional order systems and fractional
order control actions. Lecture 3 IEEE CDC 02 TW#2: Fractiional calculus Applications
in Autiomatic Control and Robotics.
Vinagre B. M. & Feliu V. (2002). Modeling and control of dynamic system using fractional
calculus: Application to electrochemical processes and flexible structures.
Proceedings of 41st IEEE Conf. Decision and Control, Las Vegas, NV, 2002, pp. 214
239.
11
Pneumatic Fuzzy Controller Simulation vs
Practical Results for Flexible Manipulator
Juan Manuel RamosArreguin 1 , Jesus Carlos PedrazaOrtega 2 ,
Efren GorrostietaHurtado 2 , Rene de Jesus RomeroTroncoso 3 ,
Jose Emilio VargasSoto 4 and Francisco HernandezHernandez 1
Wniversidad Tecnologica de San Juan del Rio,
2 Universidad Autonoma de Queretaro,
3 Universidad de Guanajuato,
4 Universidad Andhuac del Sur,
Mexico
1. Introduction
The flexible manipulators have many industrial applications; but most of the reported
works are using electrical or hydraulic actuators. These actuators have a linear behaviour
and the control is easier than pneumatic actuators; but the pneumatic position control is a
highly non linear problem, due to the air compressibility behaviour and internal friction
(Moore & Pu, 1993). Because of these conditions, there are certain difficulties in pneumatics
cylinder control design. The main disadvantage of electrical actuators is the low power
weight rate, the high current related with its load and it is heavy. The hydraulic actuators
are not ecological, needs hydraulic oil and return lines to the pump is needed. By the other
hand, the pneumatic actuators are clean, economy, light, faster, have a great powerweight
rate and return lines are not needed. However, pneumatic actuators are not used into
flexible manipulators developed due to their highly non linear behaviour. It is important to
note that research lines; such as pneumatic control, embedded systems and flexible
manipulators, are used in separate way.
As a matter of fact, most of manipulators robots use electric or hydraulic actuators; however,
the pneumatic actuators are being used in recent years (Ramos at al, 2006a; Ramos et al,
2006b) to control a flexible manipulator arm. This is the beginning of a project which
involves the use of a pneumatic cylinder to control a flexible manipulator robot. Our first
approach is to use one degree of freedom, but the main goal is to have a two degree of
freedom flexible manipulator.
Several pneumatic controllers had been developed; for example, the Model Reference
Adaptive Control, MRAC (Suarez & Luis, 2005); however, the pneumatic model used for
the control design, have the next considerations; a lineal actuator, a lineal valve, without
damping systems at the sides, ideal gas, adiabatic changes and constant viscous friction.
Other works have been focused in friction parameter identification techniques of cylinder
pneumatic (Wang & Wang, 2004), dynamic modelling and simulation (Jozsef & Claude,
192 Automation and Robotics
2003), analytic and experimental research (Henri & Hollerbach, 1998) and the development
of robotic hands using cylinder pneumatics.
Flexible manipulators can be used only under two conditions: a) when the robot weight
must be minimized, and b) when the collisions in the work space need to be avoided (Feliu
et al, 2001). The modelling of flexible manipulators has been developed almost 35 years ago
(Mirro, 1972; Whitney et al, 1974), where, almost in all cases, they used electric or hydraulic
actuators, and pneumatic cylinders are discouraged due to their non linear behavior.
Pneumatic control started in 1968 with Burrows (1968), and recent works are focused mainly
with adaptive control methods (Suarez & Luis, 2005; Quiles et al, 2004), some of them use a
computer to implement the control (Burbano et al, 2003). Other researches are focused on
mechanical system modelling using pneumatic actuators (Perez, 2003), from these kind of
works, a Flexible Manipulator Model with pneumatic cylinder called ThermoMechanical
model was developed, then the mechanical system is involved to give the movement for
the flexible arm (Kiyama & Vargas, 2004). By other hand, electric actuators are used in the
development of flexible manipulators (Feliu & Garcia, 2001), where the motor speed is
considered for the control implementation along with the motor effects and the mechanical
structure.
In our prototype we are using a flexible manipulator robot with a pneumatic actuator,
where the damping systems in both sides and the mechanical dynamics for control are
considered. The full ThermoMechanical model is used as a starting point, later it is
simplified and the results are used for the control development. One contribution of this
work is the position control of a flexible manipulator using a pneumatic actuator and a
simplified ThermoMechanical model (Ramos et al, 2006).
The simplified ThermoMechanical model of pneumatic actuators allows us to predict its
behavior, considering the air compressibility effects, internal friction forces, damping effects
in both extremes of the cylinder, massic flow and energy conservation; also, gives us the
instant pressure that depends on the rod position. From the engineering control point of
view, this model let us predict the variable behavior, involved in the physical process, and
can be used for control purposes.
This chapter is important, because the innovation of this work is the application of three
research lines to obtain a flexible manipulator light, ecological and fast with great power
weight rate. The contribution of this chapter is the reported behaviour of the onelink
flexible manipulator with pneumatic actuator with practical control results. Simulations of
several controllers have been reported to learn about the pneumatic manipulator behaviour
with onelink. The simulation and practical results are discussed. Later, the graphical
simulation is important, because let us to obtain the control parameters in few time, and
learn about the pneumatic manipulator behaviour before implementation. Finally, the
control algorithm is implemented in Matlab language, and digital interfaces are
implemented into field programmable gate array (FPGA), obtaining an embedded digital
system with serial communication (RS232) protocol. The control algorithm implemented is a
PD controller and results are compared with FuzzyController simulation results.
2. The pneumatic system
The complete system is showed in figure 1, and we call the PLANT. The output plant is 66,
corresponding to the arm elevation. The arm movement depends of the rod displacement
Pneumatic Fuzzy Controller Simulation vs Practical Results for Flexible Manipulator
193
and the cylinder force generated by the air pressure and the valve position, according with
the figure 2.
The 5/2 electro valve is used to control the rod direction, using two proportional valves,
represented by Al and A3. The pneumatic system of the figure 2 has a mathematical model,
and is called Simplified ThermoMechanical Model (Ramos et al., 2006).
Fig. 1. MechanicalPneumatic system for the flexible manipulator.
The ThermoMechanical controller developed previously (Ramos et al., 2006) includes a
PID, discrete PID and a speed change feedback proposals. In this works a fuzzy control
simulation is proposed and compared with practical results of fuzzy control implementation
with personal computer support, considering the pneumatic system as shown in figure 2.
a
zt
5/2 Electro
JE
5/2 Electrovalve
Fig. 2. Pneumatic system for the flexible arm manipulator.
194
Automation and Robotics
3. The fuzzy algorithm
The ThermoMechanical Model has the next control inputs: the valve effective area air flow,
eq. (1).
u = [Ai, Az, A 3 ]
(1)
Where Ai, A2 and A3, are the valve area of cylinder side, rod side, and air return,
respectively. However the value of Ai and A2 are the same.
3.1 The fuzzy algorithm proposal
Figure 3 shows the control block diagram used for the pneumatic actuator system, taking
the 6 angle as the mechanical system output.
e„
"^ e .
Fuzzy
Control
u
Actuator
X
Plant
J
I
8
Fig. 2. The fuzzy controller proposal for pneumatic position.
Equation (2), shows the error equation; the eqs. (3) and (4) shows the proportional valve
open level, obtained with a fuzzy logic method, where 6 P is the reference and 6 is the actual
position of the arm.
[Ai, A 3 ] = fuzzy(6 p ,e,e)
A 2 = Aa
Next, the fuzzy rules used to solve the problem are presented.
(2)
(3)
(4)
3.2 The fuzzy rules
Before the rule settings, both inputs and outputs variables were specified, and are showed in
table 1.
Input
Output
Reference, 6 P
Valve 1, Ai
Angle, 6
Valve 2, A 3
Error, e
Table 1. Fuzzy rules, inputs and outputs.
The membership functions used in the fuzzy process are showed in figures 3 to 5. The used
membership functions for the input variables, called reference and angle are the same; and
the membership functions for the output variables called valve open Ai and A2, are the
Pneumatic Fuzzy Controller Simulation vs Practical Results for Flexible Manipulator
195
Reference Memberships for ERROR
UP
NEG2 POS2 DOWN
II
1
/
\ Mi
/
\ ! «i
\ ■ i;
\ .' »:
i\ /
\ /
V
N i
A
Reference Memberships for ERROR
NEG1 ZERO
POS1
r. *
/ : i\
• : ': i\
/ ": I '■
/ ■ • !
": i !
: i I

: i I
: i \
: i I
: i !
: i \
":i '.
a \
i j
f. 
V"' :
x\
20 40 60
(a)
(b)
Fig. 3. Membership functions for ERROR input, (a) The external part, (b) The internal
interval.
Reference Memberships for REFERENCE
Reference Memberships for ANGLE
LOW
HALF
UP
/\
/
/
/
/
/
/
/
/
/
/
/
/
V /
\ /
I
t \
1 \
/
t
t \
/
/
1
»*,
, ^
i
1
LOW
HALF
UP
/
/
/
/
/
/
/
/
/
/
/
/
V /
\ 1
V
A
/ \
/
/
/
/ \
t
/
4020 20 40
ANGLE
80604020 20 40
ANGLE
(a) (b)
Fig. 4. Memberships functions, (a) Reference input, (b) Angle input
Reference Memberships for A1
FEW
HALF
ALL
t
II
H
H
1 1
1 1
1 1
1 1
1 1
' '
t ■
[ 1
A ■
l\ I
l ■
I 1
1 I
I l .*
1 I •*
I 1 **
* /
; /
"*/
t
•
\
/ \
/
/
/
/ \
i \
i \
i \
\
\
<
\
\
\
\
1 •*•
\** 1
0.01 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09
ANGLE
Reference Memberships for A2
i FEW HALF ALL
0.01 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08
ANGLE
(a) (b)
Fig. 5. Membership functions for the valve values, (a) Valve 1. (b) Valve 2.
196
Automation and Robotics
These membership functions are used to control the pneumatic actuator on the manipulator
system. In the fuzzy process, the control needs 26 rules, and those rules are distributed
depending of the interval of each variable. Table 5 shows the fuzzy rules used to control the
pneumatic actuator position. The values for Ai and A3 are normalized, that is, a value of 1.0
represents a 100% open valve (completely open); a 0.5 represents a 50% open valve and 0%
means the valve is completely closed.
INPUT
OUTPUT
Reference
Angle
Error
A!
A 2
LOW
LOW
NEG2
FEW
FEW
LOW
LOW
NEG1
FEW
ZERO
LOW
LOW
ZERO
ZERO
ZERO
LOW
LOW
ZERO
ZERO
ZERO
LOW
LOW
POS1
FEW
ZERO
LOW
LOW
POS2
FEW
FEW
LOW
HALF
DOWN
HALF
FEW
LOW
UP
DOWN
ALL
HALF
HALF
LOW
UP
HALF
FEW
HALF
HALF
UP
FEW
FEW
HALF
HALF
NEG2
FEW
FEW
HALF
HALF
NEG1
FEW
ZERO
HALF
HALF
ZERO
ZERO
ZERO
HALF
HALF
POS1
FEW
FEW
HALF
HALF
POS2
FEW
FEW
HALF
HALF
DOWN
HALF
FEW
HALF
UP
DOWN
HALF
HALF
UP
UP
UP
FEW
FEW
UP
UP
NEG1
FEW
ZERO
UP
UP
NEG2
FEW
FEW
UP
UP
ZERO
ZERO
ZERO
UP
UP
POS1
FEW
ZERO
UP
UP
POS2
FEW
FEW
UP
HALF
UP
HALF
HALF
UP
LOW
UP
HALF
HALF
Table 2. Set of fuzzy rules used in the control process.
3.3 Experimental description
Figure 6 shows a functionally block diagram of the system. The ADC is a 12bit ADS7841
device, with a synchronous serial interface communication, 4channel and up to 200 KHz
conversion rate. The DAC is a 12bit DAC7624 device, with quad voltage output, parallel
input data and 10 is of settling time. Both DAC and ADC are manufactured by Texas
Instruments. The DAC is used to control the proportional valve, and the ADC is used to
read the flexible arm position with a 10KQ resistive sensor, which output value has an
interval of to 2 V. Finally, an FPGA is used to implement the digital interfaces with the
personal computer, and the PD FPGA based controller.
Pneumatic Fuzzy Controller Simulation vs Practical Results for Flexible Manipulator
197
>
VEA 252
Power Interface
VEF2141
Air from Tank
e P
FPGA
based
controller
A
DAC
B
t r
I
Electrovalve
5/2
*
"J*
VEA 252
Power Interface
VEF2121
Air Return
i
L J
Air
Flow
i
i
i i
i
PC
Fuzzy
Algorithm
^
'
< 1
Rs232
ADC
Q
PLANT
Sensor Position
Fig. 6. Control block diagram for singlelink flexible manipulator with pneumatic actuator.
Figure 7 shows a block diagram of hardware description to be implemented into FPGA,
such as DAC driver, ADC driver, 50 ms sample time generator, communication protocol
controller (RS232 driver), a register to load the DAC input (Register) and the finite state
machine to synchronize each module (FSM control).
ADC
Driver
Rs232
Driver
DAC
Driver
Ctrl Cs ?
FSM
Control
Sample
Time
Generator
Fig. 7. Hardware description for FPGA block diagram.
The FPGA is used to implement the digital interface to control the flexible manipulator
robot prototype that is shown in figure 8. Figure 9 shows the hardware used to control the
flexible manipulator development.
Pneumatic,
cylinder
Robot
support
Position
sensor
(a) (b) (c)
Fig. 8. Flexible manipulator robot prototype, (a) General view, (b) Impulse mechanism, (c)
Position sensor.
198
Automation and Robotics
Data acquisition
board
Xilinx board
Spartan 3
VEA 252
Air from tank
Source power
for isolation circuit
VEA 252
Air return
Isolation circuit
Electrovalve 5/2
Fig. 9. Hardware used for flexible manipulator control.
VEA252 power board must be supplied with 24 V dc and the control signal should have
ground isolation. For that, an HCNR200 device, manufactured by Hewlett Packard, is used.
4. Results
To test the behavior of the system, a set points vector was used, as shows the eq. (2).
6 P = [8, 40, 70, 95] (2)
Figure 10 shows the fuzzy control simulation results, in comparison with practical results.
The values for open valve are small, due to the air pressure; if the valve open are high, the
actuator goes up too fast and arrive to the top in less than one second; in simulation way,
the maximum value for the valves was established in 10%. This result was compared with
practical results of the Fuzzy control.
Fuzzy Control Results
Time [s]
Fig. 10. Fuzzy control behavior of the flexible arm.
The pneumatic actuator is used to generate a flexible manipulator arm displacement in
radial way. To control the air flow through the cylinder, a fuzzy logic algorithm was
implemented. In figure 10, the system response at the end of cylinder, must be improved.
That behaviour is due to the gravity influence on the arm, the valves response and
mechanical structure. The behaviour of figure 10 shows several step responses, and speed
profile must be developed to obtain better results.
Pneumatic Fuzzy Controller Simulation vs Practical Results for Flexible Manipulator 199
5. Conclusions and future work
The pneumatic actuator is used for the arm position, and to control the air flow through the
cylinder, a fuzzy logic algorithm was tested in simulation and practical process, with
satisfactory results. The Fuzzy control works only with the percent of valve open, to limit
the air flow from the compressor trough the cylinder chambers. The values for Al and A2
are the same, but different for A3. Actually A3 must be small than Al to get a better system
response. In this case, we can see that a single Fuzzy Logic control is not enough to get a soft
behaviour of the system, and a PID algorithm must be used.
The system has been tested using several step functions, but a speed profile developing is
necessary to improve the system response.
The innovation of this work is the application of artificial intelligence control for onelink
flexible arm position, with pneumatic cylinder, instead of electrical or hydraulic actuator.
The contribution is the base of the knowledge about flexible manipulators with pneumatic
actuator and fuzzy logic application.
As future work, is considering the use of reference frame, neuronal networks and maybe a
combination of those controllers. By other hand, a speed profile should be developed.
9. References
Moore P. y J. Pu; Progression of servo pneumatics toward advanced applications; Fluid
Power Circuit, Component and System Design; K. Edge and C. Burrows, Eds.
Boldock, U. K.: Research Studies Press; pages 347 to 365; 1993.
Ramos, J.M.; Gorrostieta, E.; Vargas, E.; Pedraza, J.C.; Romero, R.J.; Pineiro, B. Pneumatic
cylinder control for a flexible manipulator robot. 12th IEEE International
Conference on Methods and Model in Automation and Robotics, Miedzyzdroje,
Poland, 28  31 August 2006a; ISBN 9788360140888.
Ramos, J.M.; Vargas, E.; Gorrostieta, E.; Romero, R.J.; Pedraza, J.C. Pneumatic Cylinder
Control PID for Manipulator Robot; 2006 International Conference on Dynamics,
Instrumentation and Control; Queretaro, Mexico, August 1316 2006b.
Suarez, L.; Luis, S. Estrategias de Control Adaptable para el posicionamiento continuo de
Cilindros Neumaticos. XI Convencion Informatica 2005; La Habana, Cuba; ISBN
9597164876; 2005.
Wang, J.; Wang, J. D. Identification of Pneumatic Cylinder Friction Parameters using Genetic
Algorithms. IEEE Transactions on Mechatronics; vol. 9, no. 1; pages 100 to 107;
2004.
Jozsef, K.; Claude, J. Dynamics Modelling and Simulation of Constrained Robotic System.
EEE/ ASME Transactions on Mechatronics; vol. 8, no. 2; pages 165 to 177; 2003.
Henri, P.; Hollerbach, J.M. An Analytical and Experimental Investigation of a Jet Pipe
controlled electropneumatic Actuator. IEEE Transactions on Robotics and
Automation; vol. 14, no. 4; pages 601 to 611; 1998.
Feliu, V.; Garcia, A.; Somolinos, J.A. GaugeBased Tip Position Control of a New Three 
DegreeFreedom Flexible Robot. The International Journal of Robotics Research;
vol. 20, no. 8; pp. 660675; August 2001.
Mirro, J.; Automatic Feedback Control of a Vibrating Flexible Beam; MS Thesis, Department
of Mechanical Engineering, Massachussets Institute of Technology, August 1972.
200 Automation and Robotics
Whitney, D.E.; Book, W.J.; Lynch, P.M. Design and Control Considerations for Industrial
and Space Manipulators; Proceedings of the Joint Automatic Control Conference,
June, 1974.
Burrows, C.R.; Webb C.R. Simulation of an On  Off Pneumatic Servomechanism;
Automatic Control Group, 1968.
Quiles, E.; Morant, F.; Garcia, E.; Blasco, R.; Correcher, A. Control Adaptivo de un Sistema
de Control Neumatico. 3ra. Conferencia Iberoamericana en Sistemas, Cibernetica e
Informatica CISCI, Julio 2004.
Burbano, J.C.; Bacca, G.; Hoyos, M. Control de Posicion y Presion para Manipulador
Neumatico a traves de PC. Scientia Et Tecnica, UTP; vol. 21, pp. 7176; 2003.
Perez, J. Analisis Dinamico de Mecanismos Accionados Neumaticamente. Ph.D. Thesis;
Facultad de Ingenieria Mecanica, Electrica y Electronica, FIMEE; Salamanca, Gto.;
March 2003.
Kiyama, F.; Vargas, J. Modelo TermoMecanico para un Manipulador tipo Dielectrico.
Informacion Tecnologica; vol. 15; no 5; pages 23 to 31; 2004; ISSN 07168756.
Feliu, V.; Garcia, A. GaugeBased tip Position Control of a New Three Degree of Freedom
Flexible Robot. The International Journal of Robotics Research; vol. 20, no. 8; pp.
660675; 2001.
Ramos, J.M.; Vargas, J.E.; Gorrostieta, E.; Pedraza, J.C. Nuevo Modelo Polinomial del
Comportamiento de un Cilindro Neumatico. Revista Internacional Informacion
Tecnologica; vol. 17, no. 3; ISSN 07168756; 2006.
12
Nonlinear Control Strategies for Bioprocesses:
Sliding Mode Control versus Vibrational Control
Dan Seli§teanu, Emil Petre, Dorin Popescu and Eugen Boba§u
Department of Automation and Mechatronics, University of Craiova
Romania
1. Introduction
Nowadays, the domain of biotechnology is characterized by rapid changes in terms of
novelty and by highly complex processes that require advanced procedures for design,
operation and control. From the engineering point of view, the control of bioprocesses poses
a number of challenging problems. These problems arise from the presence of living
organisms, the high complexity of the interactions between the microorganisms, as well as
the high complexity of the metabolic reactions. Moreover, for monitoring and control
applications, only a few measurements are available, either because the measuring devices
do not exist or are too expensive, or because the available devices do not give reliable
measurements. Therefore, we can deduce that the main difficulties arising in the control of
bioprocesses arrive from two main sources: the process complexity and the difficulty to
have reliable measurements of bioprocess variables (Bastin & Dochain, 1990; Selisteanu et
al, 2007a).
In order to overcome these difficulties several strategies for the control of bioprocesses were
developed, such as adaptive approach (Bastin & Dochain, 1990; Mailleret et al., 2004),
vibrational control (Selisteanu & Petre, 2001; Selisteanu et al., 2007a), sliding mode control
(Selisteanu et al., 2007a; Selisteanu et al., 2007b), fuzzy and neural strategies etc.
Sliding mode control (SMC) has been widely accepted as an efficient method for control of
uncertain nonlinear systems (Utkin, 1992; Slotine & Li, 1991; Edwards & Spurgeon, 1998).
The classical applications of SMC (such as robotics, electrical machines etc.) were extended
to SMC of chemical processes (SiraRamirez & LlanesSantiago, 1994) and to SMC of
bioprocesses (Selisteanu et al., 2007a; Selisteanu et al., 2007b). The wellknown advantages of
the SMC are the robustness, controller order reduction, disturbance rejection, and
insensitivity to parameter variations. The main disadvantage of the SMC strategies used in
real applications remains the chattering phenomenon, even if some techniques of chattering
reduction were developed (Slotine & Li, 1991; Edwards & Spurgeon, 1998).
Vibrational control (VC) is a nonclassical openloop control method proposed by Bellman,
Bentsman and Meerkov (Meerkov, 1980; Bellman et al, 1986a; Bellman et al, 1986b).
Applications of the vibrational control theory can be found for: stabilization of plasma,
lasers, chemical reactors, biotechnological processes (Selisteanu et al., 2007a) etc. The VC
technique is applied by oscillating an accessible system component at low amplitude and
high frequency. Therefore, this technique can be considered, like the SMC, a form of high
frequency control (obviously highfrequency relative to the natural frequency of the system).
202 Automation and Robotics
But, unlike the SMC, the amplitude and the frequency of the control input are constants and
independent of the state of the system, so this technique is a form of openloop control.
In this chapter, which is an extended work of (Selisteanu et al., 2007a), two nonlinear control
strategies for bioprocesses are designed: a feedback SMC law and a vibrational control
strategy. First, a class of bioprocesses is briefly analysed and a nonlinear prototype model is
presented in detail. Then, the design of a feedback control law for a prototype bioprocess is
developed. The design is based on a combination between exactly linearization, sliding
mode control, and generalized observability canonical forms. In order to implement this
SMC law, asymptotic observers (Bastin & Dochain, 1990) will be used for the reconstruction
of unmeasured states. The next paragraph deals with the presentation of most important
results of vibrational control theory. Also, a VC strategy for a continuous bioprocess is
developed. The existence and the choice of stabilizing vibrations, which ensure the desired
behaviour of the bioprocess are analysed. Some simulations results, comparisons of the
proposed nonlinear control strategies, and final remarks are also presented.
2. Nonlinear dynamical models of the bioprocesses
2.1 The dynamical model of a class of bioprocesses
In bioindustry, the bioprocesses take place in biological reactors, also called bioreactors. A
bioreactor is a tank in which several biological reactions occur simultaneously in a liquid
medium (Bastin & Dochain, 1990). These reactions can be classified into two classes:
microbial growth reactions and enzymecatalysed reactions. The bioreactors can operate in
three modes: the continuous mode, the fedbatch mode and the batch mode. For example, a
FedBatch Bioreactor (FBB) initially contains a small amount of substrates and micro
organisms and is progressively filled with the influent substrates. When the FBB is full the
content is harvested. By contrast, in a Continuous Stirred Tank Bioreactor (CSTB) the
substrates are fed to the bioreactor continuously and an effluent stream is continuously
withdrawn from the reactor such that the culture volume is constant.
In practice, the bioprocess control is often limited to regulation of the temperature and pH at
some constant values favourable to the microbial growth.
There is however no doubt that the control of the biological state variables (biomass,
substrates, products) can help to increase the bioprocess performance. In order to develop
and apply advanced control strategies for these biological variables, obviously is necessary
to obtain a useful dynamical model. The modelling of bioprocesses is a difficult task;
however, using the mass balance of the components inside the bioreactor and obeying some
modelling rules, a dynamical statespace model can be obtained (Bastin & Dochain, 1990;
Bastin, 1991).
A process carried out in a bioreactor can be defined as a set of m biochemical reactions
involving n components (with n>m). The reaction scheme of a bioprocess (the reaction
network) contains n components and m reactions. The concentrations of the physical
components will be denoted with the notations ^,i = l,n. The reaction rates will be
denoted as q)j, j = l,m. The evolution of each component is described by the differential
equation (Bastin & Dochain, 1990):
4 i =Z(±)k ij 9 J D4 i +F i Q i (1)
j~i
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 203
where 4i is the time derivative of the concentration ^ (g/1) and the notation j ~ i indicates
that the sum is done in accordance with the reactions j that involve the component i. The
positive and dimensionless constants ky are yield coefficients. The sign of the first term of
(1) is given by the type of the component ^ : plus (+) when the component is a reaction
product and minus () otherwise. D is the specific volumetric rate (h 1 ), usually called
dilution rate. F f represents the rate of supply of the component ^ (external substrate) to the
bioreactor per unit of volume (g/lh). When this component is not an external substrate, then
F t = . Q f represents the rate of removal of the component ^ from the bioreactor in
gazeous form per unit of volume (g/lh).
In order to obtain a dynamical statespace model of the entire bioprocess, we denote
£ = l§i ^2 "" ^nf' where \ is the ndimensional vector of the instantaneous
concentrations, also is the state of the model. The vector of the reaction rates (the reaction
kinetics) is denoted cp = [cp a cp 2 • • • cp m J T . The reaction rate vector is mdimensional.
Usually, a reaction rate is represented by a nonnegative rational function of the state £, . The
yield coefficients can be written as the (nxm)  dimensional yield matrix K = [K ij J,
i = l,n; j = l,m , where IC = (±)k f j if j ~ i and otherwise. Next, we introduce the notations
F = [F a F 2 • • • F n J T , Q = [Q 1 Q 2 • • • Q n J T , where F is the vector of rates of supply and
Q is the vector of rates of removal of the components in gazeous form.
From (1), with the above notations, the global dynamics can be represented by the
dynamical statespace model (Bastin & Dochain, 1990):
4 = K(pfe)D^ + FQ (2)
This model describes in fact the behaviour of an entire class of biotechnological processes
and is referred to as the general dynamical statespace model of this class of bioprocesses
(Bastin & Dochain, 1990; Bastin, 1991). In (2), the term Kcp(^) is in fact the rate of
consumption and/ or production of the components in the reactor, i.e. the reaction kinetics.
The term D£, + F  Q represents the exchange with the environment, i.e. the dynamics of
the component transportation through the bioreactor. The strongly nonlinear character of
the model (2) is given by the reaction kinetics. In many situations, the yield coefficients, the
structure and the parameters of the reaction rates are partially known or unknown.
Remark 2. In a FBB, the termD^ represents the dilution of a component due to the increase
in volume. In this case D is the specific rate of volume increase ( V = D • V , with V the liquid
volume in the FBB and V its time derivative). In a CSTB, D^ t represents the rate of
removal of a component in liquid form (in a CSTB, V = ).
Often in practice, the bioprocess control goal is to regulate a scalar output y, which can be
defined as a linear combination of the state variables. Usually, this control objective is
reached using as a control input one of the components of F, i.e. a rate of supply of an
external substrate: u = F f . Consequently, the vector F can be written as F = b • u + F , with
204 Automation and Robotics
b = [bj b 2 . bj^b^l, b,=0, i^j;andF = [F 1 F 2 ••• F n f;F i= 0, F,=F,,j*i.
Then, the model (2) can be rewritten as
4 = K.(p(0D^ + FQ + b.u = ffe)+b.u
y=hfe) (3)
2.2 The model prototype of a continuous bioprocess
A model prototype of a continuous bioprocess that takes place inside a CSTB is described by
the following nonlinear system (Bastin & Dochain, 1990; Dochain & Vanrolleghem, 2001):
^W^RD.^ (4)
at
^ = k 1 ^ 1 ,4 2 ).4 1 D4 2 +D.S in (5)
at
where £ a , £ 2 represent the biomass and the limiting substrate concentrations (g/1). Si n is the
influent substrate concentration, and D is the dilution rate (h 1 ). In (4), (5) \i is the specific
growth rate and ki > the yield coefficient.
The bioprocess (4), (5) is in fact a fermentation process, which usually occurs in a bioreactor.
A compact representation of (4), (5) is:
4 = ffe) (6)
with ffe)=[f 1 fe 1 ^ 2 ),f 2 fe^ 2 )] T and i^fe^J the state vector.
The equilibrium states of (4), (5) are of two types:
El. Washout state, defined by:
^=fe s i^ 2 ] T =[0 Sj (7)
This equilibrium is a state when the bacterial life has disappeared; therefore, the washout
state has not practical interest.
E2. Operational equilibrium states, implicitly defined by:
^fesi^s 2 ) = D (s)
These equilibria can be attractive or repulsive depending on the particular form of Mfei /^2 ) •
Only these equilibria have a practical interest. Let's assume that the specific growth rate is of
the form:
^ 1 ,^ 2 ) = ^ 2 )=^i  —
Km+^+^/Kj
(9)
This is the Haldane kinetic model of the specific growth rate (Bastin & Dochain, 1990),
where Km is the MichaelisMenten constant, Ki the inhibition constant and ju the maxim
specific growth rate.
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 205
Let's analyse the stability of the equilibria (E2) for given constant inputs D and S in . The
linear approximation of the system (4), (5) around the equilibrium point (E2) is:
dt
(^ s ) = A(Ufe"U
(10)
where A(^ s ) is the matrix of the linearized system, which takes for the specific rate (6) the
form:
where p = ^ sl
Afe 8 ) = Afe 8l/ § 82 )=jfe 8l/ § 82 ) =
di,
8h]
&,,
d% 2
8i 2
di 2
&.1
8^\
5=5,
p
M^) k lP D
(11)
d^ 2
: ^slHo
52<;
K M ~^s2/ K i
(Km+^+^/K,) 2
The eigenvalues of the matrix (11) are X 1 = D < (D is positive) and X 2 = k a p . The
equilibrium state is stable only if p > , i.e.:
0<^ 2 <VK^K7 = maxVfe)}
(12)
Two possibilities appear for the equilibria (E2):
a)  if the condition (12) is achieved:
~Ssl,l
"^s2,l
K
N
^s2 = ^s2,l
(13)
b)  or contrarily:
K
; s2 N _S in ^ s2 , 2
_ Ssl,2 ■
ki
N
^s2 = ^s2,2
(14)
The case a) corresponds to a stable equilibrium point (stable node) with X 1 <0,X 2 < . The
case b) leads to a saddle type for the equilibria (E2): X 1 < 0, X 2 > . The phase plane of the
system (4), (5) for the values of the parameters: \x = 6h _1 , K M = lOg / 1 , K { = lOOg / 1 ,
D = 3.6h _1 , k 1 = 1 , S in = lOOg / 1 and for different initial conditions is represented in Fig. 1.
From this picture it can be seen that when the substrate inhibition appears, the process can
exhibit unstable or, maybe worse, the evolution leads to washout steadystate, for which
the microbial life has disappeared and the reactor is stopped. In these situations, the
206
Automation and Robotics
bioprocess requires control to stabilize the CSTB. Moreover, in many cases, the stable
equilibrium point corresponding to a) is not technological operable (requires a big initial
amount of biomass).
120
washout
100
Fig. 1. Phase portrait of the continuous bioprocess  state trajectories and equilibrium points
The model (4), (5) is a prototype model for some bioprocesses, as the activated sludge
bioprocess, anaerobic digestion process for wastewater treatment etc. (Dochain &
Vanrolleghem, 2001) and for other biotechnological applications. For instance, the control
objective for the waste treatment processes is to control the concentration of some pollutants
at a constant (low) level. Various control strategies were developed for this prototype
bioprocess: exact linearizing strategy (Bastin & Dochain, 1990), adaptive control (Bastin &
Dochain, 1990; Bastin, 1991; Dochain & Vanrolleghem, 2001) and so on. The exact linearizing
control does not work when the kinetics are imprecisely known because the exact
cancellation of the nonlinearities would not be possible. The performance of adaptive
control decreases when large and abrupt changes occur in bioprocess parameters.
Viable alternatives are the sliding mode control (Fossas et al., 2001; Stanchev, 2003; Tham et
al., 2003) and adaptive sliding mode control strategies (Selisteanu & Petre, 2005; Selisteanu
et al., 2007b) with good performance in the presence of parameter uncertainties and external
disturbances. Another possible strategy is the openloop vibrational control (Selisteanu et
al., 2007a); in this situation, online measurements of the state variables are no more needed.
3. Sliding mode control design
3.1 Linearizing sliding mode control law design
In order to implement a viable SMC strategy for the continuous bioprocess, the control goal
is to design a discontinuous feedback law by using the exactly linearization of the system
(Isidori, 1995) and by imposing a SMC action that stabilize the output. The control strategy
is obtained by repeated output differentiation and by imposing a discontinuous feedback
controller, which drives the output of the system to satisfy a stable linearized dynamics; for
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 207
details see (SiraRamirez, 1992; SiraRamirez & LlanesSantiago, 1994; Selisteanu et al.,
2007b). Let's define the output of the system (4), (5) as
y = h(0 = 5iC (15)
The control variable is the rate of supply of substrate to the reactor per unit of volume, i.e.
u = DS in (g/lh). The control goal for the biological process (4), (5), (15) is to regulate the
concentration error y towards zero so that the biomass concentration value £ a converges to
a prescribed setpoint value specified by the constant C. It is assumed that the control
variable u is naturally bounded in the interval [0, Umax]. This SMC strategy can be applied
for the nonlinear bioprocess (4), (5), (15) if the socalled observability matrix
=
ahfe) ah (1) fe) "
(16)
is full rank (Fliess, 1990; SiraRamirez, 1992; SiraRamirez & LlanesSantiago, 1994). It is easy
to verify, after some straightforward calculations, that the rank of the observability matrix is
equal to 2 (full rank), except on line ^ = , which is devoid of practical significance ( ^
represents the biomass concentration; so ^ = means no microorganisms and the life in
the bioreactor is stopped).
Assume that u = u s , £, = ^ s (u s ) expresses a constant equilibrium point for the system (4),
(5), (15) such that h(^ s (u s )) is zero. The stability nature of an equilibrium point u = u s of the
zero dynamics (SiraRamirez, 1992; SiraRamirez & LlanesSantiago, 1994) determines the
minimum or nonminimum phase character of the system (4), (5), (15). Next, the constant
equilibrium point of this system is represented as (^ s (u s ), u s , y s =0j= (^ s (u s ), u s , 0). A
stable constant equilibrium point for (4), (5), (15) is given by (13), if the condition (12) is
achieved. In this case, the system is locally minimum phase around this equilibrium point
(i.e. the zero dynamics is locally asymptotically stable to the equilibrium point).
The following inputdependent state coordinate transformation:
z i =y=£i ~ c
* fr v ™ (17)
allows one to obtain an observability canonical form for the system (4), (5), (15) (for details
about the generalized observability canonical forms see (Fliess, 1990)). The inverse of this
transformation is obtained by solving (17) with respect to ^ and ^ 2 . One can obtain also
the transformed system equations, which are of the form:
z 2 = \)/(z 1 ,z 2 ,u) (18)
y = z a
where \\r is a nonlinear function of state variables and of the input.
For the design of SMC, consider now the auxiliary output function (the sliding surface):
208 Automation and Robotics
a = z 2 + y lZl = y + Yl y = nfe 2 %  D^ + Yl fe  C) (19)
If (19) is zeroed by means of a discontinuous control strategy, then it follows that the time
response of the controlled output y is ideally governed by an asymptotically stable linear
timeinvariant dynamics z 1 = y 1 z 1 (for the design parameter y 1 > ).
Proposition 1. The following discontinuous feedback control law (sliding mode control law):
u(t) = k^fe 2 ^ +D^ 2  M^h?) 2 _L^.[ Yl (^ 2 ) D )^ + ksgn(a)] (20)
imposes to the output of the system (18), in finite time, a linearized dynamics of the form
y + y 1 y = 0. In (20), k is a strictly positive scalar, "sgn" stand for the signum function,
ri >0,ancMy=^.
d^ 2
Proof. The proof is immediate considering the auxiliary output function (19) and imposing
on this auxiliary output the discontinuous dynamics d = ksgn(a), which leads to the
implicit discontinuous equation \\f(z 1 , z 2 , u) = y 1 z 2  k sgn(a) . Then the control law (20) is
easily obtained using the original state coordinates. This discontinuous system globally
exhibits a sliding regime on a = . Any trajectory starting on the value a = a(0) at time
reaches the condition in finite time T given by T = k _1 a(0) (see (Utkin, 1978; SiraRamirez
& LlanesSantiago, 1994)).
The basic idea for the design of the SMC law (20) is to use the auxiliary output a = as a
sliding surface, and so to force the system trajectories to remain on this surface.
Remark 2. In the case of a static SMC law, the inherent chattering can be reduced using
various continuous approximations of the SMC (Slotine & Li, 1991; Edwards & Spurgeon,
1998; Bartoszewicz, 2000), which are designed to make a boundary layer attractive such that
the trajectories started off the boundary layer will be attracted to this region in a finite time.
A possibility is to use the socalled sampled SMC (SiraRamirez & LlanesSantiago, 1994). To
reach a good compromise between small chattering and tracking precision a range of other
compensation strategies have been proposed, such as integral sliding mode control, sliding
mode control with timevarying boundary layers (Slotine & Li, 1991), fuzzy sliding mode
control (Palm et al, 1997) and complementary SMC (Su & Wang, 2002).
3.2 Design of state observers for bioprocesses
The SMC law presented in the previous paragraph can be implemented only if the
measurements of state variables are available online. However, in many practical
applications, only a part of the concentrations of the components involved are measurable
online. In such cases, an alternative is the use of state observers. An important difficulty
when applying state observers to bioprocesses is related to the uncertainty of models
describing their dynamics. Presently two classes of state observers for bioprocesses can be
found in the literature (Bastin & Dochain, 1990; Bastin, 1991; Dochain & Vanrolleghem,
2001).
The first class of observers (including classical observers like Luenberger and Kalman
observers, nonlinear observers) are based on a perfect knowledge of the model structure. A
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 209
disadvantage of this class is that the uncertainty in the model parameters can generate
possibly large bias in the estimation of the unmeasured states. A second class of observers,
called asymptotic observers, is based on the idea that the uncertainty in process models lies
in the process kinetics models. The design of these observers is based on the mass and
energy balances without the knowledge of the process kinetics being necessary. The
potential drawback of the asymptotic observers is that the rate of estimation convergence
depends on the operating conditions (Selisteanu et al., 2007b).
A general class of observers for bioprocesses of the form (2) is (Bastin & Dochain, 1990):
 = K(p()D. + FQ + n().(^^) (21)
where £ is the estimated state vector, Q() is a gain matrix, and ^ is the vector of
measurable state variables: £ a = L • \ , L being a selection matrix. The design of observer lies
in the choice of the gain matrix.
If in the model (2) the reaction rate cp(^) is completely known, it is possible to design the so
called exponential observers, such as extended Luenberger or Kalman observers based on
the general form (21). But the reaction rates are usually incompletely known (uncertainties
of parametric or structural nature); therefore it is not possible to design and to use such
observers. A possibility is to use an asymptotic observer (Bastin & Dochain, 1990; Bastin,
1991; Dochain & Vanrolleghem, 2001), which can be designed even without knowledge of
kinetic reaction. The design of an asymptotic observer is based on some useful changes of
coordinates, which lead to a submodel of (2) which is independent of the kinetics. In order
to achieve the change of coordinates, a partition of the state vector £, in two parts is
considered. This partition denoted (^ a ,^ b ) induces partitions of the yield matrix K: (K a , Kb),
also of the rate vectors F and Q: (F a , Ft,), (Q a , Qb) accordingly. We suppose that a state
partition is chosen such that the submatrix K a is full rank and dim(^ a ) = rank(K a )
= rank(K) . Then a linear change of coordinates can be defined as follows: z = G • ^ a + ^ b ,
with z an auxiliary state vector and G the solution of the matrix equation GK a +K b =0.In
the new coordinates, model (2) can be rewritten as
4 a =K a cpfe„za; a )D.^ + F a Q a (22)
z = Dz + G(F a Q a ) + F b Q b
The main achievement of the change of coordinates is that the dynamics of the auxiliary
state variables z is independent of the reaction kinetics. Now z can be rewritten as a linear
combination of the vectors of measured states £ a and unmeasured states £ 2 :
z = G 1 C 1 +G 2 C 2 (23)
with Gi and G2 well defined matrices. If the matrix G2 is left invertible, the asymptotic
observer equations for (2) derive from the structure of equations (22) and (23):
z = Dz + G(F a Q a ) + F b Q b
210 Automation and Robotics
where G 2 =(GjG2)~ 1 Gj . The asymptotic observer is indeed independent of the kinetics.
The asymptotic observer (24) has good convergence and stability performance (Bastin &
Dochain, 1990; Bastin, 1991; Dochain & Vanrolleghem, 2001).
Concerning the continuous bioprocess (4), (5), (15), a possible practical situation, which can
appear when the sliding mode control law (20) is implemented, is that the only
measurement online available is the biomass concentration inside of CSTB. In this case, the
unmeasured variable ^ 2 (the substrate concentration) can be estimated by using an
asymptotic state observer. For that, let us define the auxiliary variable £ as follows:
In the new coordinates, the model (4), (5), (15) can be rewritten
4 1 = ( i(;k 1 5 1 X 1 D5 1
The asymptotic observer equations derive from the above model:
f =  D ^« (25,
The dynamics of the auxiliary variable £ is independent of the reaction kinetics. The
estimations of ^ 2 obtained using this asymptotic observer can be used in the sliding mode
control law (20), which takes the form:
uft^k^kk +d^ 2  ^ 2 by ^rtiiMUpk +k  s ^i ( 26 )
4. Vibrational control design
4.1 Vibrational control theory fundaments
The general theory of vibrational control was developed by Bellman, Bentsman and
Meerkov (Meerkov, 1980; Bellman et al, 1986a; Bellman et al, 1986b), who presented the
criteria for vibrational stabilizability and vibrational controllability of linear and nonlinear
systems. Consider a nonlinear system given by the equation:
x = f(x,a) (27)
with f:^ n x^ m >9? n , xe5R n is a state and ae^ is a parameter, in fact a vector that
contains the system parameters. Suppose that for a fixed a = a the system (27) has the
equilibrium x s =x s (a). Let introduce now in (27) parametric vibrations according to the
law:
<x(t) = <x +g(t) (28)
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 21 1
where a is a constant vector and g(t) is an almost periodic vector function with average
equal to zero (APAZ vector). Then (27) becomes:
x = f(x,a +g(t)) (29)
Definition 1 (Bellman et al., 1986a). An equilibrium point x s (a ) of (27) is vibrationally
stabilizable if for any 5 > there exists an APAZ vector g(t) such that (29) has an
asymptotically stable almost periodic solution x s (t) characterized by x s x s (a ) <5,
x s =x I (r)=liml}x s (x)dx.
Definition 2 (Bellman et al., 1986a). An equilibrium point x s (a ) of (27) is totally
vibrationally stabilizable if it is vibrationally stabilizable and in addition we have
x s (t) = const = x s (a ), VteSR.
The vibrational stabilizability problem consists of finding conditions for existence of
stabilizable vibrations. Meerkov has demonstrated since 1980 (Meerkov, 1980) that for linear
systems, vibrational stabilizability implies total stabilizability. If the matrix A of the linear
system x = Ax is a nonderogatory matrix, i.e. the minimal and characteristic polynomials
coincide, a sufficient condition of vstabilizability is tr(A)< .
Considered now a class of nonlinear systems such that (29) is represented as:
x(t) = f(x,a )+f v (g(t),x) (30)
N
with f v (v) a vector function linear with respect to its first argument and f(x)=f(x,oc ) ( ot
fixed).
For this large class of nonlinear systems with parametric oscillations, a classification can be
done with respect to the form of f v (•,•) :
i) f v (g(t),x) = L(t), where L(t) is an APAZ vector and the vibrations are called vector
additive. If L(t) = [O • • • l(t)] T , i.e. all but the last components of L(t) are zero, the
vibrations are AP forcing;
ii) f v (g(t), x) = B(t)x , with B(t) an APAZ matrix. These vibrations are linear multiplicative;
iii) f v (g(t),x)= B(t)r(x)  vibrations are nonlinear multiplicative. B(t) is an APAZ matrix.
In (Bellman et al., 1986a; Bellman et al., 1986b) the existence of stabilizing vibrations for the
class of the nonlinear system (30) is analyzed and it is shown in what sense and under which
conditions an equilibrium of (30) can be stabilized. The general conclusion of (Bellman et al.,
1986a; Bellman et al., 1986b) is that the VC with vibrations of the form i) and ii) is not
feasible if the Jacobian matrix has a positive trace. The case of nonlinear multiplicative
vibrations iii) was studied for a subclass of nonlinear systems in (Bentsman, 1987). Once the
conditions for existence of vibrational stabilizability are settled for a system, it is necessary
to solve another important problem: finding the specific form of stabilizing vibrations. This
problem is referred as vibrational controllability (Bellman et al., 1986b).
Consider the general solution of
x(t)=f v (g(t),x) (31)
212 Automation and Robotics
denoted as x(t) = &(t, c), where cg^R" is a constant uniquely defined for every initial
condition (x ,t ) and assume that this general solution is almost periodic. The substitution
x(t)= S(t,x(t)) transforms the nonlinear system (30) into x
the averaging of this system is:
T
dx
i
•f(o(t,x))=x(t,x).Then,
x a = X(x a ) = Xp)= lim 1 j X(t, x)dt (32)
Consider x a s an equilibrium of (32), and the linearization of (32) around x a
" gX(xj "
(33)
The goal is to find an APAZ vector g(t) that induces a dynamic equivalence between
systems (30) and (32). Assume that the equilibrium x s of (30) satisfies the equality
x s = $(t,x a/S ). Then, for the equilibrium x a s corresponding to x s , the linearization (33) can
be represented as:
x a =(J + H)x a (34)
where J is the Jacobian matrix of (30) for the equilibrium x s and H is a constant nxn
matrix.
Definition 3 (Bellman et al., 1986b). An element L of matrix J is vibrationally controllable if
there exists an APAZ vector g(t) such the corresponding element h of H is nonzero.
The type of vibrations and their parameters depend of the particular nonlinear system that
is analysed. Calculation formulas have been obtained in (Bellman et al., 1986b). Assume that
the Jacobian matrix J of the nonlinear system (30) has negative trace. Then the calculation
formula for linear multiplicative vibrations applied to the nonlinear system is:
H = RJ, R = O~ 1 (t,0)jO(t,0) (35)
where O(t,0) is the state transition matrix of the system (30), in the particular case of the
linear multiplicative vibrations ii): f v (g(t), x) = B(t)x .
4.2 The vibrational control strategy for the continuous bioprocess
The basic idea of vibrational controlled CSTB is to vibrate the flow rates and in this way to
operate the bioreactor at average conversion rates which were previously unstable. By using
this technique is possible to eliminate significant expenses associated with feedback. Since
the vibrations depend only on time and not on the value of states, there no longer was a
need to take measurements of concentrations.
In order to apply the vibrational control we have three possibilities: additive vibrations,
linear multiplicative vibrations or nonlinear multiplicative vibrations. The general
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 213
conclusion of (Selisteanu & Petre, 2001) is that the additive vibrations and APforcing VC
are not applicable to the bioprocess described in Section 2. A study about the linear
multiplicative VC of the CSTB is achieved next.
Consider the bioprocess (4), (5) with the equilibria (El) or (E2). From operational point of
view, only the equilibrium (E2) is interesting. With the Haldane kinetic model of the specific
rate (9), we have two possibilities for the equilibrium (E2): stable equilibrium point (13)  a
stable nod  if p > and saddle type of equilibrium point (14), i.e. instability, if p < (see
also Fig. 1). In those situations when the substrate inhibition appears, the bioprocess can
exhibit unstable or can go to the washout; in these cases the system requires control in
order to stabilize the CSTB.
The trace condition for the Jacobian matrix (11) of the bioprocess (4), (5) is achieved if:
tr(J) = k lP D<0 (36)
Assume that (36) is respected. The vibrational controlled bioprocess is of the form:
4 = f(0+B(tK
(37)
where B(t) is an APAZ matrix.
There exists positive s = const, such that vibrations (l/e)B(t/£), 0<s<e , induce a
dynamic equivalence between the linearized averaged system of the form (32), denoted here
£ = E(£), and the vibrationally controlled process 4 = fOO+(l/ s )'B(t/e)^ . In order to
apply the VC, it is important to find the particular form of B(t) such that this dynamical
equivalence is achieved. Consider B(t) of the form:
B(t) =
0'
b(t)
(38)
Then the state transition matrix of 4 = B(t)£, is: ® (t) =
Assuming that (p(t) = we obtain from (35):
1
cp(t) 1
,with <p(t) = jb(x)dx.
(39)
Lk^0; s2 )p(p 2 (t) k lP D
For b(t)  an APAZ function  we consider the cosinusoidal form: b(t) = (3cos(t).
1 T
Consequently we have cp 2 (t) = lim — J(p 2 (x)dT = p 2 /2 , and finally R and then H using the
T^oo X Q
calculation formula (35) are obtained:
R
p
k 1 ^ s2 )pp 2 /2 k lP D
(40)
214
Automation and Robotics
H = RJ:
0"
pp 2 /2
(41)
For (3 chosen such that R is Hurwitz, and for 8 sufficiently small, the vibrations (38)
stabilize the equilibrium (14) of (4), (5). A theoretical value for s is complicated to obtain,
but a practical value can be obtained via simulation.
Remark 3. Because the equilibrium (14) is nonzero (nontrivial), in fact it is stabilizable by a
combination of linear multiplicative and vector additive vibrations B(t) • (£,  ^ s ) .
5. Simulation results
Sliding mode control. Simulation were performed for a continuous stirred tank bioreactor
(CSTB) described by the model (4), (5), (15) with the parameters from paragraph 2. Two
simulation cases are considered:
i) The simulated control task considered the problem of stabilizing the output y to y* = ,
using the SMC law (20). In fact, the closed loop system was tested for a step profile of the
external substrate reference C. The final reference value is achieved in two steps: first the
reference is set to 70 g/1; the next reference is set to the value ^ = C = 80g/l . The SMC law
parameters are y 1 = 1 and k = 3 .
Figure 2 presents the time evolution of the concentrations, and Fig. 3 depicts the output and
the control input.
The behaviour of the concentrations is good, but it can be seen that the control action
exhibits a chattering, which can be unacceptable in practice. The profile of the auxiliary
output function (the " sliding surface") and a magnification of this auxiliary output are
depicted in Fig. 4. In order to obtain a smoothed control input, a saturation function is used
and the results are presented in Fig. 5.
85
80
75
70
65
60
55
50
45
40
35
5 10 15 20 25 30 35 40 45
Fig. 2. Time evolution of the substrate and biomass concentrations  SMC case
(g/i)
e *
*i
=C
/
/
/
 A
/
^
; h
\
\ r
^\ ^
Time (h)
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 21 5
5
5
10
15
20
/
/
/
/

/ >\
/
 / \
\y
_
y
Time (h)
5 10 15 20 25 30 35 40 45
450
400
350
300
(g/in)
u
Time (h)
5 10 15 20 25 30 35 40 45
Fig. 3. Profiles of output and control input (rate of supply of substrate per unit of volume)
Time (h)
"0/5 10 15 20 25 30 35 40 45
0.5 t
(J (zoom)
MMMWMWMM^^
0.5
Time (h)
10
Fig. 4. The evolution of the auxiliary output (the sliding surface), including a zoom area
ii) In order to test the robustness properties of the controlled bioprocess and to add realism
to the simulation, a parametric disturbance in the yield coefficient k x was considered (a
50% variation from the nominal value); this coefficient is uncertain in practice. The
disturbance occurs once in the simulation time interval, about 1 h in duration (time interval
30h  31h). Also, in this simulation case, only the biomass concentration is considered on
line measurable.
216
Automation and Robotics
5r
5
10
15
20
10
/"^~
s^~
/
/ Y
/
/

Time (h)
15
20
25
30
35
40
45
450
400
350
300
(g/ih)
f
Time (h)
u
10
15 20 25 30 35 40
45
Fig. 5. Time evolution of the output and the control input  the chattering reduction case
Therefore, the SMC law (26) was implemented, using the estimations ^ 2 provided by the
asymptotic observer (25). The profile of the reference is the same as in the first simulation
case. The performance of the asymptotic observer can be noticed in Fig. 6, where the
substrate concentration and its estimate are depicted. Fig. 7 shows that in this simulation
case, the controlled process exhibits a good behaviour and the SMC law can cope with the
parametric disturbance.
45
,(g/i)
44
\

43
/*'
42
\
41

\
40
\
39
K^^
h
v^% ~
38
■
Time (h)
0.8 1 1.2 1.4 1.6 1.8 2
Fig. 6. Profiles of the substrate concentration and its estimate (magnification of a small area)
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 21 7
85
80
75
70
65
60
55 h
50
45
40
35
(g/i)
Vi=c
/^
/
/^\
_
J ~ h
\ ^^
J
\ /""
^ »
Time (h)
10
15 20
25
30
35 40
45
Fig. 7. Time evolution of the concentrations  the SMC parametric disturbance case
Remark 4. In practice, there exist the socalled parasitic or unmodelled dynamics, along with
the principal dynamics of the plant (Boiko, 2005; Boiko & Fridman, 2006). The principal
dynamics are used for the SMC design. On the other hand, to implement the designed
algorithms, some equipment such as actuators, sensors etc. are needed. Hence it is required
to take into consideration the parasitic dynamics, introduced mainly by the actuators. Often,
a firstorder (plus time lag) model of the actuator is used, with the transfer function
H a (s) = K a e~ xs /(T a s + l), where K a ,T a are the parameters of the actuator, and x is the time
lag. However, for our CSTB, the dynamics of the actuator are faster than the principal
dynamics and the time lag is negligible, hence their contribution to the overall system
dynamics is small. Nevertheless, some supplementary simulation results show that the
performance of the sliding mode controlled process is deteriorated in this case (in
comparison with the ideal sliding mode controlled bioprocess)  for example the chattering
of the control input is increasing and the setpoint regulation performance is deteriorated.
Remark 5. A problem in the case of SMC is that the robustness of the sliding surface (used in
the SMC design procedure) with respect to the parametric uncertainties is valid only for
small variations of the parameters. If the parameters are imprecisely known, then the
switchings cannot take place with precision on the switching manifold and furthermore the
stability of the closed loop system can be affected. In that case, an adaptive dynamical SMC
law can be used in order to improve the performance of the controlled bioprocess
(SelisteanuetaL, 2007b).
Vibrational control. The simulation is given for the same bioprocess parameters. The value of
the control parameter p = 5 is chosen such that the matrix R is Hurwitz. In Figure 8, the
averaged phase portrait of the vibrationally controlled bioprocess (the averaged state
trajectories) is presented. It can be seen that the previously unstable equilibrium (see Fig. 1)
is stabilized into a stable node.
218
Automation and Robotics
20 40 60 80 100 120
Fig. 8. The averaged phase portrait of the vibrationally controlled continuous bioprocess
The time evolution of concentrations and the averaged time trajectories are provided in Fig.
9. This picture gives a comparison of ^(t) (solid curves) and the averaged state variables
^(t) (dashed curves) for s = 0.066 . To test the robustness of the vibrationally controlled
bioprocess, the same parametric disturbance in the yield coefficient like in the SMC case was
considered (in the time interval lOh  llh). The simulation results are presented in Fig. 10.
Time (h)
"0 5 10 15 20
Fig. 9. Time evolution of the biomass and substrate concentrations  VC strategy
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 21 9
Time (h)
"0 5 10 15 20
Fig. 10. Time profiles of the concentrations  VC parametric disturbance case
6. Conclusion
In this work, two nonlinear highfrequency control strategies for bioprocesses are proposed:
a feedback sliding mode control law and a vibrational control strategy. In order to
implement these strategies, a prototype bioprocess that is carried out in a Continuous
Stirred Tank Bioreactor was considered. First, a discontinuous feedback law was designed
using the exact linearization and by imposing a SMC that stabilizes the output of the
bioprocess. When some state variables used in the control law are not measurable online,
an asymptotic state observer was used in order to reconstruct these states. Second, using the
vibrational control theory, a VC strategy for the continuous bioprocess was developed. The
existence and the choice of stabilizing vibrations, which ensure the desired behaviour of the
bioprocess are widely analysed.
Some discussions and comparisons regarding the application of the sliding mode control
and vibrational control techniques to bioprocesses can be done. Both the SMC and VC
strategies are highfrequency methods, obviously high frequency relative to the natural
frequency of the bioprocess. A main difference between VC and SMC is that in vibrational
case, no measurements of state variables are required.
The idea of vibrational stabilization is to determine vibrations such the unstable equilibrium
point of a bioprocess bifurcates into a stable almost periodic solution. The practical
engineering VC problem can be described as a three steps technique: first it is necessary to
find the conditions for existence of stabilizing vibrations, second to find which parameter or
component is physically possible to vibrate and finally to find the parameters of vibrations
that ensure the desired response.
From the simulations, the conclusion is that both methods can deal with some parametric
disturbances. However, from this point of view, the behaviour of the feedback SMC is
better. For the vibrational technique to be effective, one needs to have an accurate
220 Automation and Robotics
description of system dynamics. This fact together with physical limitation on the
magnitude and the frequency of vibrations in some cases are the disadvantages of the
vibrational technique. A drawback of the SMC strategy is the chattering phenomenon. This
chattering can be reduced using various techniques, but it cannot be eliminated, due to the
inherent presence of the socalled parasitic dynamics, which are introduced principally by
the actuator.
The proposed highfrequency techniques were tested using a prototype of a continuous
bioprocess. For that reason, the presented results cannot be extended without intensive
studies to other bioprocesses.
However, there exist some studies and implementations of the SMC strategy for fedbatch
bioprocesses (Selisteanu & Petre, 2005). On another hand, using the results obtained by
(Lehman & Bentsman, 1992; Lehman et al., 1994), the vibrational control theory can be
extended for time lag systems with bounded delay. Such systems are the bioprocesses that
take place inside the CSTB with delay in the recycle stream (Selisteanu et al., 2006).
The obtained results are quite encouraging from a simulation viewpoint and show the
robustness of the controllers and good setpoint regulation performance. These results must
to be verified in the laboratory using some real bioreactors. Further research will be focused
on this real implementation. Also, some theoretical approaches will be the development of
the highfrequency control strategies for multivariable bioprocesses and of some hybrid
control strategies for these bioprocesses, like the closedloop vibrational control (see for
example (Kabamba et al., 1998)) and the adaptive sliding mode techniques.
7. Acknowledgment
This work was supported by the National University Research Council  CNCSIS, Romania,
under the research projects ID 786, 358/2007 and ID 686, 255/2007 (PNCDI II), and by the
National Authority for Scientific Research, Romania, under the research projects SICOTIR,
05D7/2007 (PNCDI II) and APEPUR, 717/P1/2007 (CEEX).
8. References
Bartoszewicz, A. (2000). Chattering attenuation in sliding mode control systems. Control and
Cybernetics, Vol. 29, No. 2, pp. 585594, ISSN 03248569
Bastin, G. & Dochain, D. (1990). Online Estimation and Adaptive Control of Bioreactors.
Elsevier, ISBN 9780444884305
Bastin, G. (1991). Nonlinear and adaptive control in biotechnology: a tutorial, Proceedings of
the European Control Conference ECO 91, pp. 20012012, Grenoble, France, 1991
Bellman, R.E.; Bentsman, J. & Meerkov, S.M. (1986a). Vibrational control of nonlinear
systems: vibrational stabilizability. IEEE Transactions on Automatic Control, Vol. 31,
No. 8, pp. 710716, ISSN 00189286
Bellman, R.E.; Bentsman, J. & Meerkov, S.M. (1986b). Vibrational control of nonlinear
systems: vibrational controllability and transient behavior. IEEE Transactions on
Automatic Control, Vol. 31, No. 8, pp. 717724, ISSN 00189286
Bentsman, J. (1987). Vibrational control of a class of nonlinear systems by nonlinear
multiplicative vibrations. IEEE Transactions on Automatic Control, Vol. 32, No. 8, pp.
711716, ISSN 00189286
Nonlinear Control Strategies for Bioprocesses: Sliding Mode Control versus Vibrational Control 221
Boiko, I. (2005). Analysis of the sliding modes in frequency domain. International Journal of
Control, Vol. 78, No. 13, pp. 969981, ISSN 00207179
Boiko, I. & Fridman, L. (2006). Frequency domain analysis of second order sliding modes,
Proceedings of the American Control Conference, pp. 53905395, Minneapolis,
Minnesota, USA, 2006
Dochain, D. & Vanrolleghem, P. (2001). Dynamical Modelling and Estimation in Wastewater
Treatment Processes. IWA Publishing, ISBN 1900222507
Edwards, C. & Spurgeon, S.K. (1998). Sliding Mode Control: Theory and Applications. Taylor
and Francis, ISBN 0748406018
Fliess, M. (1990). Generalized canonical forms for linear and nonlinear systems. IEEE
Transactions on Automatic Control, Vol. 35, No. 9, pp. 9941001, ISSN 00189286
Fossas, E.; Ros, R.M. & Fabregat, J. (2001). Sliding mode control in a bioreactor model.
Journal of Mathematical Chemistry, Vol. 30, No. 2, pp. 203218, ISSN 02599791
Isidori, A. (1995). Nonlinear Control Systems. Springer Verlag, ISBN 3540199160, New York
Kabamba, P.T.; Meerkov, S.M. & Poh E.K. (1998). Pole placement capabilities of vibrational
control. IEEE Transactions on Automatic Control, Vol. 43, No. 9, pp. 12561261, ISSN
00189286
Lehman, B. & Bentsman, J. (1992). Vibrational control of linear time lag systems with
arbitrarily large but bounded delays. IEEE Transactions on Automatic Control, Vol.
37, No. 10, pp. 576582, ISSN 00189286
Lehman, B.; Bentsman, J.; Lunel, S.V. & Verriest, E.I. (1994). Vibrational control of nonlinear
time lag systems with bounded delay: averaging theory, stabilizability, and
transient behavior IEEE Transactions on Automatic Control, Vol. 39, No. 5, pp. 898
912, ISSN 00189286
Mailleret, L.; Bernard, O. & Steyer J.P. (2004). Nonlinear adaptive control for bioreactors
with unknown kinetics. Automatica, Vol. 40, No. 8, pp. 13791385, ISSN 00051098
Meerkov, S.M. (1980). Principle of vibrational control: theory and applications. IEEE
Transactions on Automatic Control, Vol. 25, No. 4, pp. 755762, ISSN 00189286
Palm, R; Driankov, D. & Hellendoorn, H. (1997). Model Based Fuzzy Control: Fuzzy Gain
Schedulers and Sliding Mode Fuzzy Controllers. SpringerVerlag, ISBN 978
3540614715, Berlin
Selisteanu, D. & Petre, E. (2001). Vibrational control of a class of bioprocesses. Control
Engineering and Applied Informatics, Vol. 3, no. 1, pp. 3950, ISSN 14548658
Selisteanu, D. & Petre, E. (2005). On adaptive sliding mode control of a fedbatch bioprocess,
Proceedings of the 11th IEEE International Conference on Methods and Models in
Automation and Robotics MMAR 2005, pp. 243248, ISBN 8360140901,
Miedzyzdroje, Poland, AugustSeptember 2005
Selisteanu, D.; Petre, E.; Hamdan, H. & Popescu, D. (2006). Modelling and vibrational
control of a continuous stirred tank bioreactor with delay in the recycle stream.
WSEAS Transaction on Biology and Biomedicine, Issue 5, Vol. 3, pp. 331338, ISSN
11099518.
Selisteanu, D.; Petre, E.; Popescu, D. & Bobasu, E. (2007a). High frequency control strategies
for a continuous bioprocess: sliding mode control versus vibrational control,
Proceedings of the 13th IEEE/IF AC International Conference on Methods and Models in
Automation and Robotics MMAR 2007, pp. 7784, ISBN 9788375180329, Szczecin,
Poland, August 2007
222 Automation and Robotics
Selisteanu, D.; Petre, E. & Rasvan, V. (2007b). Sliding mode and adaptive slidingmode
control of a class of nonlinear bioprocesses. International Journal of Adaptive Control
and Signal Processing, Vol. 21, No. 89, pp. 795822, ISSN 08906327
SiraRamirez, H. (1992). On the sliding mode control of nonlinear systems. Systems and
Control Letters, Vol. 19, No. 4, pp. 302312, ISSN 01676911
SiraRamirez, H. & LlanesSantiago, O. (1994). Dynamical discontinuous feedback strategies
in the regulation of nonlinear chemical processes. IEEE Transactions on Control
Systems Technology, Vol. 2, No. 1, pp. 1121, ISSN 10636536
Slotine, J.J.E. & Li, W. (1991). Applied Nonlinear Control PrenticeHall, ISBN 978013040890
7, Englewood Cliffs, NJ
Stanchev, S.P. (2003). A variant of an (combined) adaptive controller design introducing
sliding regime in Lyapunov derivative, Proceedings of the American Control
Conference, pp. 909914, Denver, USA, 2003
Su, J.P. & Wang, C.C. (2002). Complementary sliding control of nonlinear systems.
International Journal of Control, Vol. 75, No. 5, pp. 360368, ISSN 00207179
Tham, H.J.; Ramachandran, K.B. & Hussain, M.A. (2003). Sliding mode control for a
continuous bioreactor. Chemical and Biochemical Engineering, Vol. 17, No. 4, pp. 267
275, ISSN 03529568
Utkin, V.I. (1978). Sliding Regimes and their Applications in Variable Structure Systems. MIR
PubL, ISBN 9780714712130, Moscow
Utkin, V.I. (1992). Sliding Modes in Control Optimization. Springer Verlag, ISBN 9780387
535166, Berlin
13
Sliding Mode Observers
for Rotational Robotics Structures
Dorin Sendrescu, Dan Seli§teanu, Emil Petre and Cosmin Ionete
Department of Automation and Mechatronics, University of Craiova
Romania
1. Introduction
The problem of controlling uncertain dynamical systems subject to external disturbances has
been an issue of significant interest over the past several years. Most systems that we
encounter in practice are subjected to various uncertainties such as nonlinearities, actuator
faults parameter changes etc. Many of the proposed control strategies suppose that the state
variables are available; this fact is not always true in practice, so the state vector must be
estimated for use in the control laws. In the past, several types of observers have been
designed for the reconstruction of state variables: Kalman filter (Kalman, 1976), adaptive
observers (Gevers & Bastin, 1986), high gain observers (Gauthier et al., 1992), sliding mode
observers (SMO) (Utkin, 1992; Walcott & Zak, 1986; Edwards & Spurgeon, 1994) and so on 
see (Thein & Misawa, 1995) for some comparisons. Depending upon the particular
application, all these observers can be used with suitable results. Sliding mode observers
differ from more traditional observers in that there is a nonlinear discontinuous term
injected into the observer depending on the output estimation error. These observers are
known to be much more robust than Luenberger observers, as the discontinuous term
enables the observer to reject disturbances (Tan & Edwards, 2000). The observers based on
the variable structure systems theory and sliding mode concept can be classified in two
categories (Xiong & Saif, 2000): 1) the equivalent control based methods and 2) sliding mode
observers based on the method of Lyapunov. The analysis of these two types of SMO
(Edwards & Spurgeon, 1994; Xiong & Saif, 2000) shows that there exist some differences in
terms of robustness properties. From practical point of view, the selection of the switched
gain for the equivalent control based SMO is difficult (in order to obtain a sliding mode
without excessive chattering) (Edwards & Spurgeon, 1994). Also, there exists bounded
estimation error for bounded modelling errors (the estimation will not be accurate when
uncertainties are presented) (Xiong & Saif, 2000). The Lyapunov based SMO (the socalled
WalcottZak observer) provides exact estimation for certain class of nonlinear systems under
existence of certain class of uncertainties. However, the difficulty in finding the design and
gain matrices is the main drawback of this observer. Consider the effect of adding a negative
output feedback term to each equation of the Utkin observer. This results in a new error
system. The addition of a Luenberger type gain matrix, feeding back the output error, yields
the potential to provide robustness against certain classes of uncertainty.
224 Automation and Robotics
In order to test the performances of SMO, this work addresses the design and the
implementation of SMO for two rotational Quanser experiments: flexible link and inverted
pendulum experiments. Growing needs for advanced and precise robot manipulators in
space industry and mechanically flexible constructions result in new and complicated
problems of modelling, identification and control of flexible structures, i.e. flexible beams,
robot arms, etc. Dealing with flexible systems one is faced with inherent infinite
dimensionality of the systems, light damping, nonlinearities, influence of variable
environment etc. One of the most important factors is to establish a suitable mathematical
model of the system to make analysis as realistic as possible. Therefore, inclusion of the
dynamics of electrical devices (i.e. DC servomotors, tachogenerators, etc.) to a mechanical
model may be required. In recent years, various strategies were developed in order to
control flexible beams: adaptive control, robust control (Gosavi & Kelkar, 2001), different
slidingmode control strategies (Drakunov & Ozguner, 1992; Jalili et al., 1997; Selisteanu et
al., 2006), fuzzy control and some combined methods (Ionete, 2003; Gu & Song, 2004). The
control goal is to achieve the flexible link position control, and to damp the arm vibrations.
In spite of the simplicity of the structure, an inverted pendulum system is a typical
nonlinear dynamic control object, which includes a stable equilibrium point when the
pendulum is at pending position and an unstable equilibrium point when the pendulum is
at upright position. When the pendulum is raised from the pending position to the upright
position, the inverted pendulum system is strongly nonlinear with the pendulum angle. The
inverted pendulum is a classic problem in dynamics and control theory and widely used as
benchmark for testing control algorithms (PID controllers, neural networks, genetic
algorithms, etc). Variations on this problem include multiple links, allowing the motion of
the cart to be commanded while maintaining the pendulum, and balancing the cart
pendulum system on a seesaw. The inverted pendulum is related to rocket or missile
guidance, where thrust is actuated at the bottom of a tall vehicle. The inverted pendulum
exists in many different forms. The common thread among these systems is to balance a link
on end using feedback control. In the rotary configuration, the first link, driven by a motor,
rotates in the horizontal plane to balance a pendulum link, which rotates freely in the
vertical plane. The real mathematical models of these systems are very complicated, so for
control purpose simplified models are typically used. In general, the models of the
rotational experiments are derived using Lagrange's energy equations, and consequently
generalized dynamic equations are obtained. In order to obtain useful models for control
design, approximations of these models can be derived (represented by nonlinear ordinary
differential equations). Moreover, a linear approximation can be also obtained. Even the
linear models have unknown or partially known parameters; therefore identification
procedures are needed. The control strategies require the use of state variables; when the
measurements of these states are not available, it is necessary to design a state observer.
The LQG/LTR (Linear Quadratic Gaussian/ Loop Control Recovery) method is used in
order to obtain feedback controllers for the benchmark Quanser experiments (Selisteanu et
al., 2006). The aim of these controllers is to achieve robust stability margins and good
performance in step response of the system. LQG/LTR method is a systematic design
approach based on shaping and recovering openloop singular values. Because the control
laws necessitate the knowledge of state variables, the equivalent control method SMO and
the modified Utkin SMO are designed and implemented. Some numerical simulations and
real experiments are provided.
Sliding Mode Observers for Rotational Robotics Structures
225
2. The models of quanser rotational experiments
The Quanser experimental setup contains the following components (Apkarian, 1997):
Quanser Universal Power Module UPM 2405/1503; Quanser MultiQ PCI data acquisition
board; Quanser Flexgage  Rotary Flexible Link Module; Quanser SRV02E servoplant; PC
equipped with Matlab/Simulink and WinCon software.
WinCon™ is a realtime Windows 98/ NT/ 2000/ XP application. It allows running code
generated from a Simulink diagram in realtime on the same PC (also known as local PC) or
on a remote PC. Data from the realtime running code may be plotted online in WinCon
Scopes and model parameters may be changed on the fly through WinCon Control Panels as
well as Simulink. The automatically generated realtime code constitutes a standalone
controller (i.e. independent from Simulink) and can be saved in WinCon Projects together
with its corresponding userconfigured scopes and control panels.
WinCon software actually consists of two distinct parts: WinCon Client and WinCon Server.
WinCon Client runs in hard realtime while WinCon Server is a separate graphical interface,
running in user mode. WinCon Server is the software component that performs the
following functions: conversion of a Simulink diagram to C source code, starting and
stopping the realtime code on WinCon Client, making changes to controller parameters
using userdefined Control Panels and plotting the data streamed from the realtime code.
WinCon supports two possible configurations: the local configuration (i.e. a single machine)
and the remote configuration (i.e. two or more machines). In the local configuration,
WinCon Client, executing the realtime code, runs on the same machine and at the same
time as WinCon Server (i.e. the usermode graphical interface). In the remote configuration,
WinCon Client runs on a separate machine from WinCon Server. The two programs always
communicate using the TCP/IP protocol. Each WinCon Server can communicate with
several WinCon Clients, and reciprocally, each WinCon Client can communicate with
several WinCon Servers. The local configuration was used to perform the real time
experiments and is shown below in Fig. 1. The data acquisition card, in this case the MultiQ
PCI, is used to interface the realtime code to the plant to be controlled. The user interacts
with the realtime code via either WinCon Server or the Simulink diagram. Data from the
running controller may be plotted in realtime on the WinCon scopes and changing values
on the Simulink diagram automatically changes the corresponding parameters in the real
time code. The realtime code, i.e. WinCon Client, runs on the same PC. The realtime code
takes precedence over everything else, so hard realtime performance is still achieved.
The PC running WinCon Server must have a compatible version of The Math Works'
MATLAB installed, in addition to Simulink, and the RealTime Workshop toolbox.
PC
5
jRTX (RealTime
jEnvironment)
Windows NT/ 200/ XI
Matlab/Simulink
RTW/VisualC++
Plant to be
controlled
WinCon
Client
WinCon
Server
4 — ►
User
Fig. 1. The WinCon local configuration: WinCon Client and WinCon Server on same PC
226
Automation and Robotics
A. Rotating Flexible Beam Model
The rotary motion experiments are based on the Rotary Servo Plant SRV02E. It consists of a
DC servomotor with built in gearbox whose ratio is 70 to 1. The output of the gearbox drives
a potentiometer and an independent output shaft to which a load can be attached. The
flexible link experiment consists of a mechanical and an electrical subsystem. The modelling
of the mechanical subsystem consists in describing the tip deflection and the base rotation
dynamics. The electrical subsystem involves modelling of DC servomotor that dynamically
relates voltage to torque.
The Flexible Link module consists of a flat flexible arm at the end of which is a hinged
potentiometer (Fig. 2). The flexible arm is mounted to the hinge. Measurement of the flexible
arm deflection is obtained using a strain gage. The gage is calibrated to output 1 volt per 1
inch of tip deflection.
L
Fig. 2. Quanser Flexible Beam Experiment: SRV02E servo plant and rotary flexible link
module
The equations of motion involving a rotary flexible link imply modelling the rotational base
and the flexible link as rigid bodies. As a simplification to the partial differential equation
describing the motion of a flexible link, a lumped single degree of freedom approximation is
used. We first start the derivation of the dynamic model by computing various rotational
moment of inertia terms. The rotational inertia for a flexible link and a light source
attachment is given respectively by
h
i
= 3 m "
(1)
where mn n k is the total mass of the flexible link, and L is the total flexible link length. For a
single degree of freedom system, the natural frequency is related with torsional stiffness and
rotational inertia in the following manner
K„,
J u
(2)
where co n is found experimentally and K s tiff is an equivalent torsion spring constant as
delineated through the following figure
Sliding Mode Observers for Rotational Robotics Structures
227
Ga^^_ ___^
{("
^! A
^^ 1 —
i uioiuiiui op liny
Fig. 3. Torsional spring
In addition, any frictional damping effects between the rotary base and the flexible link are
assumed negligible. Next, we derive the generalized dynamic equation for the tip and base
dynamics using Lagrange's energy equations in terms of a set of generalized variables a
and 6, where a is the angle of tip deflection and 6 is the base rotation given in the
following
Aff^TL— — o
JLf^V— — o
dt{dd) da da
(3)
where T is the total kinetic energy of the system, P is the total potential energy of the system,
and Qi is the ith generalized force within the ith degree of freedom. Kinetic energy of the
base and the flexible link are given respectively as
1 9
T = — T
base ry J base
T link=2 Jlink ^" d ) 2
The total kinetic energy of the mechanical system is computed as the sum of (4) and (5)
T=^J bM ,e 2 +±j IH[ (ed) z
Potential energy of the system provided by the torsional spring is given as
(4)
(5)
(6)
(7)
Applying equation (6) and (7) into (3) results in the following dynamic equations
U base + J link ft Jlink a _ Qe
~ Jlink + Jlink a + K stiff a = Qa
(8)
Next we compute the amount of virtual work, W, applied into the system. The amount of
virtual work is given to be
228
Automation and Robotics
5W = x56 + 05a (9)
where t is the torque applied to the rotational base. Rewriting equation (9) into a general
form of virtual work given as
5W = Q e 59 + Q a 5oc
(10)
one obtains the virtual forces applied onto the generalized coordinates Q e and Q a
respectively to be
Qe=i,Q«=0
(11)
After decoupling the acceleration terms of (8), the dynamic equations for the mechanical
subsystem are
K
stiff
> base
a + 
t;
i base
K
stiff
1 1
 + 
V J link J
a + 
1
(12)
base J
J
base
Next, rewriting equations (12) into a state space form gives
K„.
J b
1 1
+ 
J b
1
1
J base
1
Jb
(13)
Since the control input into the mechanical model of equation (13) is a torque x , an electrical
dynamic equation relating voltage to torque is needed.
First, the torque applied to the rotational base, on the right hand side of equation (13), is
converted to the torque applied to the gear train by the DC servomotor by means of a gear
ratio K given as x = K x m , where x m is the torque applied by the servomotor.
The DC servomotor is an electromechanical device that relates torque to current through a
proportionality gain K T . Applying Kirchoffs voltage law to the DC circuitry of the motor,
and after some calculations, we obtain a state space model of (13), rewritten to utilize an
electrical control voltage as input (Ionete, 2003):
K c
J base
1
+
link Jb
1
K T K b K g
K T K b K g
J base ^m
K T K
Jbase^n
(14)
Sliding Mode Observers for Rotational Robotics Structures
229
where K b is a proportional constant between angular velocity of the motor and the voltage
applied by the motor shaft, R m is the resistance of the resistor of DC circuitry and V is the
voltage supplied by the data acquisition board.
Next, a transformation between relative angular position and relative displacement about a
neutral axis is used within the state space model. The relative angular position and the
velocity with respect to the rotating base are proportional to the relative displacement and
to the velocity of the flexible link tip (i.e. sin(oc) « a , for a small) respectively: d = a • L ,
d = a • L , where d is the relative displacement and L is the length of the flexible link. The
Fig. 4 shows the relationship of these three parameters. Substituting the above equations
into the state space dynamics previously obtained gives the following state space equation:

K c
J link J b
V J link
K T K b K g
K T K b K
+ bV
(15)
The Quanser flexible beam parameters are: length of link: L = 0.45m ; mass of link m =
0.0008 kg; link inertia moment: Jimk = 0.0042 kgm 2 ; mass of base: mb = 0.05 kg; resistance of
motor circuit: R m = 2.6 Q ; gear ratio of rotary base: K g = 70/1; torque constant: Kt = 0.00767
Nm/A; proportional constant: K b = 0.00767 V/(rad/sec); motor constant: K m = 0.00767
Nm/A; equivalent torsion spring constant: K sti ff = 2 Nm/rad; base inertia moment: Jbase =
0.002 kgm 2 (Apkarian, 1997).
Fig. 4. Simplified model of flexible beam experiment
B. Rotary Inverted Pendulum Model
As a typical unstable nonlinear system, inverted pendulum system is often used as a
benchmark for verifying the performance and effectiveness of a new control method
because of the simplicity of the structure. Since the system has strong nonlinear ity and
inherent instability, it must to linearize the mathematical model of the object near upright
position of the pendulum. To control both the angle of the pendulum and the position of the
arm a robust controller will be tasted using a SMO to estimate the unmeasured states. The
Quanser Rotary Inverted Pendulum module shown in Fig. 5.a consists of a rigid link
(pendulum) rotating in a vertical plane. The rigid link is attached to a pivot arm, which is
230
Automation and Robotics
mounted on the load shaft of a DCmotor. The pivot arm can be rotated in the horizontal
plane by the DCmotor. The DCmotor is instrumented with a potentiometer. In addition, a
potentiometer is mounted on the pivot arm to measure the pendulum angle. The objective of
the experiment is to design a control system that positions the arm as well as maintains the
inverted pendulum vertical. This problem is similar to the classical inverted pendulum
(linear) except that the trajectory is circular. The Quanser experimental setup contains the
following components: Quanser Universal Power Module UPM 2405/1503; Quanser MultiQ
PCI data acquisition board; Quanser Rotary Inverted Pendulum; Quanser SRV02E servo
plant; PC equipped with Matlab/Simulink and WinCon software.
Pendulum
Rotating
Hinge
Potentiometer
Fig. 5. a) Schematic of Rotary Inverted Pendulum; b) Simplified model for rotary inverted
pendulum
In order to obtain a useful model of the inverted pendulum, consider the simplified model
in Fig. 5.b. Note that 1 is half L , the actual length of the pendulum (1 =0.5L ). The
kinetic and potential energies in the system are given by:
P pen= m pS 1 pCOS(a)
T pen = 0.5m p [(Or + dl p cos(a)) 2 + (al p sin(a)) 2 ]
(16)
T base =0.5J b e
Q2
where T is the kinetic energy of the system, P is the potential energy of the system. Using the
above and the Lagrangian formulation one obtains the nonlinear differential equations of
the system:
(m r 2 + J b J6 + m rdl cos(a)  m rd 2 l sin(a) = x
ml cos(a)6r  ml sin(a)d6r + m dl 2  m gl sin(a) =
(17)
Sliding Mode Observers for Rotational Robotics Structures
231
where: x is the input torque from motor (Nm), m the mass of rod (kg), 1 the centre of
gravity of rod (m), J b the inertia of arm and gears ( kgm ), 6 the deflection of arm from zero
position (rad), a the deflection of pendulum from vertical up position (rad).
The linear equations resulting from (17) are:
U
pJb
1 0"
r o i
1
e
a
+
1
e
Jb
r
d
~y7
(18)
Note that the zero position for all the above equations is defined as the pendulum being
vertical "up". The motor equations are:
V = I m R m +K m K g 6
(19)
where: V (volts) is the voltage applied to motor, I m (amp) is the current in motor, K m
(V/(radsec)) the back EMF constant, K g the gear ratio in motor gearbox and external
gears.
The torque generated by the motor is: x = K m KI m =J b 9. We have also
m
V(s)
= l/s
Jj£m_ s + K K
V K m K g
, where s is the complex variable from Laplace transform.
The linear model that was developed is based on a torque x applied to the arm. The actual
system however is voltage driven. From the motor equations derived above one get that
;V K m K g _ K m 2K g 2
R„
R„
6 . Finally, one obtains the following linear model:
irurg
p —
Jb
o g Jb+mpr2
IpJ
P Jb
_ K m K g
" JbRm
rK m K g
IpJb^m
01
1
"e"
a
e
+
a
J
K m Kg
J b R m
rK„K„
IpJbRn
(20)
The Quanser inverted pendulum parameters are: pendulum length: L = 21 = 0.305m ; arm
length r=0.145m; mass of pendulum m p = 0.105 kg; resistance of motor circuit: R m = 2.6 Q ;
back EMF constant: K m = 0.00767 V/ (rad/ sec); external gear ratio: K g = 70:1; base inertia
moment: J b = 0.0044 kgm 2 .
232 Automation and Robotics
3. LQG/LTR control strategy
Nonlinear system model imprecision may come from actual uncertainty about the plant
(e.g., unknown plant parameters), or from the purposeful choice of a simplified
representation of the system's dynamics. Modeling inaccuracies can be classified into two
major kinds: structured (or parametric) uncertainties and unstructured uncertainties (or
unmodeled dynamics). The first kind corresponds to inaccuracies on the terms actually
included in the model, while the second kind corresponds to inaccuracies on the system
order. Modeling inaccuracies can have strong adverse effects on nonlinear control systems.
One of the most important approaches to dealing with model uncertainty is robust control.
The LQG/LTR (Linear Quadratic Gaussian/ Loop Control Recovery) theory is a powerful
method for the control of linear systems in the statespace domain (Athans, 1986). The aim
of these controllers is to achieve robust stability margins and good performance in step
response of the system. LQG/LTR method is a systematic design approach based on
shaping and recovering openloop singular values. This LQG/LTR technique generates
controllers with guaranteed closed loop stability robustness property even in the face of
certain gain and phase variation at the plant input/ output. In addition, the LQG/LTR
controllers provide reliable closedloop system performance despite of stochastic plant
disturbance. The LQ control design framework is applicable to the class of stabilizable linear
systems. Briefly, the LQG/LTR theory says that, given a n th order stabilizable system
x(t) = Ax(t) + Bu(t), t > 0, x(0) = x (21)
where x(t) e 9I n is the state vector and u(t) e 9l m is the input vector, determine the matrix
gain K e ^j mxn such that the static, fullstate feedback control law u(t) = Kx(t) satisfies the
following criteria
1) The closed loop state space system is asymptotically stable;
2) The performance functional given by
J(K)= J [x T (t)Qx(t) + u T (t)Ru(t)]dt (22)
is minimized.
The performance functional of equation (22) regulates the state trajectories of x close to the
origin without excessive control demand through the design of the penalty weights of
nonnegative definite matrices Q and R. The solution of the LQG/LTR problem can be
obtained via a Lagrange multiplierbased optimisation technique and is given by
K = R _1 B T P, where Pe9? nxn is a nonnegativedefinite matrix satisfying the following
algebraic Riccati equation
A T P + PA + Q  PBR" 1 B T P = (23)
Note that it follows that the LQG/LTRbased control design requires the availability of all
state variables for feedback purpose.
Sliding Mode Observers for Rotational Robotics Structures 233
LQG/LTR strategy for the flexible beam. The objective for the rotary flexible link dynamic
system is to achieve an asymptotically stable system response for flexible link. For the state
variable of d(t) in (15), a LQG/LTR based controller drives the flexible dynamic response to
zero asymptotically. For tracking the angular position, a new state variable is required to
allow setpoint tracking. To achieve error regulation, an angular error and an angular
velocity error are defined respectively as
e(t)=9(t)e d ,e(t)=e(t) (24)
where 9 d is a desired constant angular position for the flexible link. In addition, an integral
controller coupled in the rigid body dynamics is defined within the state space dynamics of
(15), (j)(t) = e(t) , so that the state space dynamics is augmented to give the final linear model.
The underactuated control objective involves error regulation for the absolute angular
displacement of the rotary base and vibration control for the end of the flexible link. Using
the abovedescribed LQG/LTR controller design method and the model of the plant
obtained with the identification procedure, we are able to get the statefeedback vector. For
the Quanser flexible beam, the arm angle and the deflection are measured by a
potentiometer and a strain gage respectively. Any physical sensor does not measure the
flexible arm angular velocity and the deflection velocity; instead we compute these
velocities using a modified Utkin sliding mode observer as a part of overall control scheme.
The LQG/LTR strategy ensures a good behaviour with respect to angular reference tracking
and has a good perturbation rejection capability.
LQR strategy for the inverted pendulum. The state variables used for the control experiment are
x(t) = [0(t) a(t) 9(t) d(t)J . For our laboratory model, the pivot arm angle 6 and the
pendulum angular position a are measured by two potentiometers. The pivot arm angular
velocity 9 and pendulum angular velocity d are not measured by any physical sensor,
instead, we numerically compute 9 and d by implementing a modified Utkin sliding mode
observer. In order to regulate precisely the pendulum position, we introduce another state,
the integral of the rotary arm error. So the state vector becomes:
x(t) = [9(t),a(t),9(t),d(t),f9(t)dtJ T . Then, the above described LQG/LTR strategy can be
successfully applied.
4. Design of the sliding mode observers
A. Utkin slidingmode observer
The sliding mode technique has been widely studied and developed for the control and
state estimation problems since the works of Utkin. Observers based on sliding mode
approach first were developed for linear systems (Jalili et al., 1997). Consider the following
linear timeinvariant system:
x = Ax + Bu
A g <R nxn , B e 9* n xp , C e W xn (25)
y = Cx v '
234
Automation and Robotics
The problem to be considered is that of reconstructing the state variables using only
measured output information. Without loss of generality we assume that rank C = p . It is
also assume that the pair {C, A} is observable and matrices A, B, C are known. In this case,
the observed vector y may be represented as:
y = C a X a+ C b X b' X = ( X a' X b)'
C a g 9?P x ( n "P) , C b g 9? pxp , det(C b ) *
Using the following linear transformation of state variable:
Ti
I„ P o
the system described by (25) can be written in the form:
Xa =A ll X a+ A 12y + B lU
y = A 21*a+ A 22y + B 2U
The corresponding sliding mode observer proposed by Utkin is given by:
(26)
(27)
(28)
x a = A n*a +A 12 y + B lU + LMsgn(yy)
y = A 22 y + A 21 £ a +B 2 uMsgn(yy)
(29)
where (x a ,y) are the estimates for (x a ,y) , L g $R (n ~P )x P is a constant nonsingular feedback
gain matrix and sgn is the signum function and M is a strictly positive gain. If one define
8 = y  y and e a =x a x a then, the following error system is obtained
K = A nS a + A 12 e y +LMsgn(s y )
I 6 = A 21 £ a + A 22 £ y " M S g n ( £ y )
Defining the following change of coordinates:
(30)
T 2 =
Inp L
I„
then the error system with respect to these new coordinates can be written as:
S a _ A ll 8 a +A 12 S y
s y = A 2i£a + A 2 2 e y Msgn(s )
(31)
(32)
(33)
where:
/\ ii — /\ ii ~r Li/\ 21 / t* 10 — ** 12 LA 22 ** 11/
(34)
Sliding Mode Observers for Rotational Robotics Structures
235
It can be shown that for large enough M>0 a sliding mode motion can be induced on the
output error state in (33). It follows that, after some finite time s = and £ = . Equation
(32) then reduces to
: All £ a
(35)
which by choice of L represents a stable system and so e a » as t > oo . Consequently
x a — » x a and the remaining states can be constructed in the original coordinate system as
= q; 1 (yc a x.
(36)
B. Modified Utkin slidingmode observer
The major practical difficulty in the approach presented in subsection A is the selection of an
appropriate gain M to induce a sliding motion in finite time (Edwards & Spurgeon, 1994).
Consider the effect of adding a negative output error feedback term to each equation of the
Utkin observer (29) (Xiong & Saif, 2000). This results in a new error system governed by:
s a =A 11 s a +A 12 s y G 1 s y
S y = ^21 £ a +i ^22 £ y _ G 2 S y ■
Msgn(s )
(37)
By selecting G 1 =A 12 and G 2 =A
appropriate dimension, then
22 A 22 where A 22 is any stable design matrix of
( 38 )
:A 21 e a +A 22 8 y Msgn(8 y )
In this form the (nominal) error system is asymptotically stable for any M sgn(e ) because
the poles of the combined system are given by a(A n )ua(A 22 ) and so lie in the open left
half complex plane. The two gain matrices Gi and G2 yields the potential to provide
robustness against certain classes of uncertainty.
As it can be seen from relations (15) and (20), the system matrices for flexible link and
inverted pendulum models have a similar structure of the following form:
, C = [c a c 2 0],D =
1
a 32 a 33
a 42 a 43
Choosing C a = [0 c 2 ],C b = c 1 and using the linear transformation:
0"
"0"
1
,B =
b 3
L b J
(39)
Ti =
10
10
1
c 9
(40)
236
Automation and Robotics
the matrices from (28) has the following form:
a
a
43
a 4 2
"0"
33
a 32
, A 12 
= [c 2 c a 0],A 22 =0 B a
1
and the matrices for the modified Utkin slidingmode observer are:
B 2 =0
(41)
(42)
z) Numerical values for the flexible Beam case
For the flexible beam experiment we have the following numerical values for the
parameters:
a 32 = 2035.9; a 33 = 55.435; a 42 = 2320.1; a 43 = 55.435;
b 3 = 103.25; b 4 =103.25
G 1 =
237.59
209.16
0.067
(43)
G 2 = 0.677
ii) Numerical values for the Inverted Pendulum case
For the inverted pendulum experiment we have the following numerical values for the
parameters:
a 32 = 33.95; a 33 = 25.19; a 42 = 96.60; a 43 = 23.96;
b 3 = 46.93; b 4 =44.62
" 585.6
1065.6
195
G 1 =
(44)
G 2 =29
5. Experimental results
A. Flexible beam case
The objective for the rotary flexible link dynamic system is to achieve an asymptotically
stable system response for flexible link. This system is very sensitive to derivative feedback
gains because the unmodelled higher modes will be excited if the bandwidth of the system
is too high or if high frequency noise is present. Using the LQG/LTR design described in the
previous section we obtain the optimal feedback gain K for the feedback law with the
following components:
k a = 0.025;k 2 =0.6;k 3 =0.005;k 4 =0.01
(45)
Sliding Mode Observers for Rotational Robotics Structures
237
The experimental results obtained to step reference for feedback gain matrix
L = [0.1; 0.1; 0.1] and M=5 are presented in Fig. 6:
1 1 1 1 1 1 1
iJ — v _^^ RESPONSE
REFERENCE^
TIT ^^
"" 1 T 1 T
TIT
TIT
1 1 1 ^ 1
64
Time [sec]
Fig. 6. Experimental step response of flexible link
In Fig. 7 the evolution of one measured state (arm angle velocity) and of its estimation is
presented and in Fig. 8 the real and estimated arm angle evolution are depicted and it can be
seen the good convergence of the sliding mode observer.
E
<
Real arm angle velocity
Estimated arm angle velocity
Fig. 7. Real and estimated arm angle velocity for flexible beam experiment
238
Automation and Robotics
,
I
t 1 — / X^v^ — r
Real (measured) arm angle
 Estimated arm angle
: :/ : ^~L_
i \ \ \ \ \ \ \
l\
I If       
62 62.5
64 64.5
Time [sec]
Fig. 8. Real and estimated arm angle for flexible beam experiment
!f\
AMMAftfl/lAAAMAArt
1 V \i\
yui/i/uvuVUV v U v V,V v \/\
1 i
w uvyvuvvvvvvvlfvvvv
Arm Angle
Reference
Arm Angle
Measured
Mllfll
\
ul. ..nAlfJumnAAnAAllnAllflAnAA/
i
l/Vi/l/ upvwifuvuuvupuuv iivi/v
30
Time [Sec]
Fig. 9. Step response for real inverted pendulum experiment
B. Inverted pendulum case
The objective of the experiment is to design a control system that positions the arm as well
as maintains the inverted pendulum vertical. The robust controller will be tested using a
SMO to estimate the unmeasured states. Using the LQG/LTR design we obtain the optimal
feedback gain K for the feedback law:
k a =0.09;k 2 =0.9;k 3 =0.08;k 4 =0.1
(46)
Sliding Mode Observers for Rotational Robotics Structures
239
The experimental results obtained to step references for feedback gain matrix
L = [10;  10;  5] and M=20 are presented in Fig. 9.
Fig. 10. Real and estimated arm angle for real inverted pendulum experiment
REFERENCE
ARM ANGLE MEASURED
i
*~\ i a r\ /~\ /~\ x\./ix
xjXj \r\f \t \jy
15 20
Time [Sec]
Fig. 11. The behaviour of the perturbed inverted pendulum
In Fig. 10 is presented the real and estimated arm angle evolution for the inverted pendulum
system. It can be seen the small chattering due to the sliding mode estimations. In Fig. 11 the
disturbance response of pendulum to a tap is presented. The pendulum is tapped such that
it falls around 30 degree which causes the arm to move towards the falling direction. This
results in the pendulum swinging to about 20 degree in the opposite direction. The system
240 Automation and Robotics
recovers in about 4 seconds. Advantages demonstrated by the SMO techniques for the
inverted pendulum system include robustness in the presence of parameter uncertainties
and disturbances plus ease of parameter selections for both the controller and observer.
6. Conclusion
This work presents some aspects regarding modelling and control of some robotics
rotational experiments: flexible beam and inverted pendulum experiments. The experiments
were realised using WinCon™ application that allows running code generated from a
Simulink diagram in realtime. For the model describing the flexible beam experiment the
control goal was to achieve the flexible beam position control and to damp the arm
vibrations. The inverted pendulum experiment objective was to design a feedback control
system that positions the arm as well as maintains the inverted pendulum vertical. Both
experiments are highly nonlinear and consequently, the real mathematical models of the
systems are very complicated, so for control purpose simplified models were used. Using
the formulas of the kinetic and potential energies, from the generalized dynamic equations
one obtained approximated linear models expressed by ordinary differential equations.
Nonlinear systems model imprecision compensation and perturbations rejection were
achieved using the robust controllers design. The LQG/LTR method was used in order to
obtain feedback controllers for the benchmark robotic experiments. The aim of these
controllers is to achieve robust stability margins and good performance in step response of
the system. LQG/LTR method is a systematic design approach based on shaping and
recovering openloop singular values. The control strategies required the use of all state
variables. Many of the proposed control strategies suppose that the state variables are
available; this fact is not always true in practice so, it was necessary to design a state
observer. The LQG/LTR control method and the modified Utkin SMO were designed and
implemented. Sliding mode observers differ from more traditional observers e.g.
Luenberger observers, in that there is a nonlinear discontinuous term injected into the
observer depending on the output estimation error. These observers are much more robust
than Luenberger observers, as the discontinuous term enables the observer to reject
disturbances. The Lyapunov based SMO (the socalled WalcottZak observer) provides exact
estimation for certain class of nonlinear systems under existence of certain class of
uncertainties. The difficulty in finding the design and gain matrices is the main drawback of
this observer. A negative output feedback term was added to each equation of the Utkin
observer and this result in a new error system. The addition of a Luenberger type gain
matrix, feeding back the output error, yields the potential to provide robustness against
certain classes of uncertainty. The problem considered was that of reconstructing the state
variables using only measured output information.
For the flexible beam experiment a LQG/LTR controller was developed in order to achieve
the flexible link position control and to damp the arm vibrations. The LQG/LTR controller
uses the state estimations from a slidingmode observer. A lot of experiments using the
Quanser rotational experiments show that the modified Utkin slidingmode observer
provides better results than the classical Utkin slidingmode observer. The results show also
good angle reference tracking and vibration suppression. For the inverted pendulum
experiment a LQG/LTR controller was developed also in order to maintain it upright. The
nonmeasurable state variables are obtained using the modified Utkin SMO. The robustness
of the controller is tested to some perturbations. The efficiency of the controlobserver
Sliding Mode Observers for Rotational Robotics Structures 241
structure scheme has been successfully verified using the two experimental platforms. The
proposed sliding mode observerbased control demonstrated very good performance;
especially it is robust under external disturbances and it has good tracking references.
7. Acknowledgment
This work was supported by the National University Research Council  CNCSIS, Romania,
under the research projects ID 786, 358/2007 (PNCDI II), and by the National Authority for
Scientific Research, Romania, under the research projects SICOTIR, 05D7/2007 (PNCDI II).
8. References
Apkarian, J. (1997). A Comprenhensive and Modular Laboratory for Control Systems
Design and Implementation, Quanser Consulting.
Athans, M. (1986). A tutorial on the LQG/LTR method. In Proc. American Control Conf,
Seattle, WA, pp. 12891296, 1986.
Drakunov, S.V. & Ozguner, U. (1992). Vibration suppression in Flexible Structures via the
SlidingMode Control Approach, Proc. of 31st Conf. On Decision and Control,
Tucson, USA, pp. 13651366, 1992.
Edwards, C. & Spurgeon, S. K. (1994). On the development of discontinuous observers, Int.
J. Control, vol. 59, no. 5, pp. 12111229.
Gauthier, J. P., Hammouri, H. & Othman, S. (1992). A Simple Observer for Nonlinear
Systems. Applications to Bioreactors, IEEE Trans, on Automatic Control, vol. 37,
no. 6, pp. 875880.
Gevers, M. & Bastin, G. (1986). A Stable Adaptive Observer for a Class of Nonlinear Second
Order Systems, in Analysis and Optimization of Systems, Bensoussan and Lions,
Eds. NewYork Springer Verlag, pp. 143155.
Gosavi S.V. & Kelkar, A.G. (2001). Passivitybased Robust Control of Piezoactuated Flexible
Beam, Proc. of American Control Conference, Arlington, USA, pp. 24922497, June
2527, 2001.
Gu, H. & Song, G. (2004). Adaptive robust slidingmode control of a flexible beam using
PZT sensor and actuator, Proc. of 2004 IEEE Int. Symposium on Intelligent Control,
Taipei, Taiwan, pp. 7883, 2004.
Ionete, C. (2003). LQG/LTR Controller Design for Flexible Link Quanser Realtime
Experiment, Proc. of Int. Symp. SINTES11, Craiova, Romania, vol. 1, pp. 4954,
2003.
Jalili, N., Elmali, H., Moura, J.T. & Olgac, N. (1997). Tracking Control of a Rotating Flexible
Beam using Modified Frequencyshaped Sliding Mode Control, Proc. of American
Control Conference, Albuquerque, USA, pp. 25522556, 1997.
Kalman, R.E. (1976). On a New Approach to Filtering and Prediction Problems, ASME J.
Basic Engineering, Vol. 24, pp. 705718.
Selisteanu, D., Sendrescu, D. & Ionete, C. (2006). On Sliding Mode Control and Identification
of a Flexible Beam, 12th IEEE International Conference on Method and Models in
Automation and Robotics MMAR 2006, pp. 5561, ISBN 836014088X ,
Miedzyzdroje, Poland, August 2831, 2006.
Tan, C.P. & Edwards, C. (2000). An LMI Approach for Designing Sliding Mode Observers,
IEEE Conference on Decision and Control, Australia, pp.25872592, 2000.
242 Automation and Robotics
Thein, L.MW. & Misawa, E. A. (1995). Comparison of the Sliding Observer to Several State
Estimators Using a Rotational Inverted Pendulum, Proc. of the 34th Conference on
Decision and Control, New Orleans, pp. 33853390, 1995.
Utkin, V.I. (1992). Sliding Modes in Control Optimization. Berlin: Springer Verlag.
Walcott, B. L. & Zak, S. H. (1986). Observation of dynamical systems in the presence of
bounded nonlinearities/ uncertainties, Proc. of the 25th Conference on Decision
and Control, pp. 961966, 1986.
Xiong, Y. & Saif, M. (2000). Slidingmode Observer for Uncertain Systems. Part I: Linear
Systems Case, Proc. of the 39th IEEE Conference on Decision and Control, Sydney,
pp. 316321, 2000.
14
A Declarative Framework for Constrained
Search Problems in Manufacturing
Sitek Pawek and Wikarek Jaroslaw
Technical University ofKielce
Poland
1. Introduction
Today's highly competitive business environment makes it an absolute requirement on
behalf of the managers to continuously make the best decisions in the shortest possible time.
'Learning from mistakes' has left its place to 'one strike and you* re ouV reality. That is, there is
no room for mistake in making decisions in this global environment. Success depends on
quickly allocating the organizational resources towards meeting the actual needs and
requirements of the customer. Decision problems involve various numeric and nonnumeric
constraints, some of which are conflicting with each other. Occasionally, decisionmakers do
not have complete information on the situation. Thus they perform 'whatif and goal
seeking analyses involving constraints. In order to succeed in such an unforgiving
environment, managers and decision makers need integrated 'intelligent' decision support
systems (DSS) that are capable of using a wide variety of models along with data and
information resources available to them at various internal and external repositories. In this
chapter we present the use of constraint logic programming as a tool for such decision
support systems in constrained search problems, focusing on the model representation and
analyses.
The original contribution of our approach consists of a declarative framework for
constrained search problems, developed within the constraint logic programming (CLP)
paradigm together with relational SQL database, and the development of a constraint logic
solver for scheduling problems with external resources and resource dependent processing
times in different production organization environments.
2. Constrained search problems
Constrained search problems (e.g., scheduling, planning, resource allocation, placement,
routing) appear frequently at different levels of decision in manufacturing. They are usually
characterized by technical, environmental or manpower constraints, which make them
unstructured, and in most of the cases are difficult to solve (NPcomplete). Traditional
mathematical programming approaches (linear programming, integer and mixed integer
programming) are deficient in the following ways: their representation of constraints is
artificial (commonly using 01 variables), their computing time in the presence of many
constraints is very long (due to combinatorial explosion), and they cannot process various
constraints applied to the main problem. Thus, the most used approach consists in
244 Automation and Robotics
developing specific software, written in a procedural language like PASCAL, BASIC or C, to
solve each particular problem. However, the use of procedural languages brings the
following well known disadvantages: the development time of the programs is very long
and the programs are very complex, hence difficult to maintain and adapt to rapid changes
of requirements.
Unlike traditional approaches, CLP provides for a natural representation of heterogeneous
constraints and allows domainspecific heuristics to be used on top of generic solving
techniques.
3. Declarative programming  SQL, CLP
Declarative programming is a term with two distinct meanings, both of which are in current
use. According to one definition, a program is 'declarative' if it describes what something is
like, rather than how to create it. For example, HTML, XML web pages are declarative
because they describe what the page should contain — title, text, images — but not how to
actually display the page on a computer screen. This is a different approach from imperative
programming languages such as PASCAL, C, and Java, which require the programmer to
specify an algorithm to be run. In short, imperative programs explicitly specify an algorithm
to achieve a goal, while declarative programs explicitly specify the goal and leave the
implementation of the algorithm to the support software (for example, an SQL select
statement specifies the properties of the data to be extracted from a database, not the process
of extracting the data).
According to a different definition, a program is 'declarative' if it is written in a purely
functional programming language, logic programming language, or constraint
programming language. The phrase "declarative language" is sometimes used to describe all
such programming languages as a group, and to contrast them against imperative
languages.
These two definitions overlap somewhat. In particular, constraint programming and, to a
lesser degree, logic programming, focus on describing the properties of the desired solution
(the what), leaving unspecified the actual algorithm that should be used to find that solution
(the how). However, most logic and constraint languages are able to describe algorithms and
implementation details, so they are not strictly declarative by the first definition.
Constraint Logic Programming (CLP) is a declarative modelling and procedural
programming environment that integrates qualitative /heuristic knowledge representation
of logic and quantitative/ algorithmic reasoning into a single paradigm. Unlike traditional
approaches, CLP provides for a natural representation of heterogeneous constraints and
allows domainspecific heuristics to be used on top of generic solving techniques. The main
issue for the constrainedbased approach is CSP (Constraint Satisfaction Problem). In
artificial intelligence and operation research, constraint satisfaction is the process of finding
a solution to a set of constraints. Such constraints express allowed values for variables. A
solution is therefore an evaluation of these variables that satisfies all constraints. Constraint
Satisfaction Problems (on finite domains) are typically solved using a form of search. The
most used techniques are variants of backtracking, constraint propagation and local search.
CLP as a declarative modelling and procedural programming environment is increasingly
realized as an effective tool for decision support systems (Bisdorff & Laurent, 1995; Lamma
et al., 1997; Lee & Lee 1996). Constraint Logic Programming is suitable for Decision Support
Systems (DSS) because (Liao et al, 2002; Ryu, 1998):
A Declarative Framework for Constrained Search Problems in Manufacturing 245
• CLP is a very good tool for the development of knowledge base that has expertise and
experience represented in terms of logic, rules and constraints. This tool allows the
knowledge base to be built in an incremental and accumulating way (it is suitable for
illstructured or semistructured decision analysis problems).
• Constraints naturally represent decisions and their interdependencies. Decision choices
are explicitly modelled as the domains of constraint variables.
• CLP can serve as a good integrative environment for the decision analysis that has
different kinds of model.
Decision analysis requires a number of computational facilities which this tool can provide.
4. Declarative framework for constrained search problems
There is a growing need for decision support tools capable of assisting a decision maker in
the constrained search problems in manufacturing. The most important of them are
scheduling problems and scheduling problems with resource allocation. The diversity of
scheduling problems, the existence of many specific constraints (precedence, resource,
capacity, etc.) in each problem and the efficient constraint based scheduling algorithms
make constraint logic programming a method of choice for the resolution of complex
practical problems. In constraint programming approach to decision support in scheduling
problems, the problem to be solved is represented in terms of decision variables and
constraints on these variables (Pape, 1995).
Depending on the particular applications, the variables of scheduling problems (jobshop,
flowshop, openshop, and project shop) can be:
• The start time and the end time of each operation.
• The set of resources assigned to each operation (if this set is not fixed).
• The capacity of a resource that is assigned to an operation (e.g. the number of workers
from a given team assigned to operation).
• The processing times (constant, variable increasing/ decreasing function of starting
times or allocated resources, etc.).
The constraints of a scheduling problem include:
• Temporal and precedence constraints which define the possible values for the start and
end times of operations and the relations between the start and end time of two
operations.
• Resource constraints which define the possible set of resources for each operation.
• Capacity constraints which limit the available capacity of each resource over time.
• Problemspecific constraint which correspond to particular features of operations and
resources.
Additional variables and constraints can be included to represent optimization criteria,
preferences of the user of scheduling system, etc.
4.1 Assumptions of DSS based on declarative framework
The presented in (section 3) advantages and possibilities of CLP environment for decision
support make it interesting for decision support in constrained search problems. Building
decision support system for scheduling, covering a variety of production organization
forms, such as jobshop, flowshop, project, multiproject etc., is especially interesting.
The following assumptions were adopted in order to design the presented scheduling
processes of decision support system (see Fig. 1.):
246
Automation and Robotics
Problemspecific constraint which correspond to particular features of operations and
resources.
The system should possess data structures that make its use possible in different
production organization environments (see Fig. 2.).
The system should make it possible to schedule the whole set of tasks/jobs
simultaneously, and after a suitable schedule has been found, it should be possible to
add a new set of tasks later, and to find a suitable schedule for both sets without the
necessity to change initial schedules.
The decisions of the systems are the answers to appropriate questions formed as CLP
predicates.
The system should regard:
o additional resource types apart from machines, e.g. people, tools, etc,
o temporary inaccessibility of all resource types,
o resource or time depending processing times, etc.
INPUTS
FIRST
TYPE
SECOND
TYPE
QUESTIONS FOR THE DSS
What is the minimum number of workers necessary for assigned
makespan and proper schedule?
What is the minimum makespan at the assigned number of workers
and proper schedule?
What is the minimum number of workers necessary for assigned makespan
for new tasks? (without changing the schedule of basic set of tasks)?
Is it possible to order new tasks for the determined makespan? •
Is it possible to order tasks for the determined makespan ?
Is it possible to order tasks for the determined makespan where
the processing time of job depends on allocated number of workers?
ADDITIONAL INFORMATION
* EXISTING SCHEDULES
* COMPANY'S RESOURCES
( MANPOWER
* CUSTOMER'S REQUIREMENT
CLP ENGINE OF DSS SYSTEM
PREDICATES:
* FOR ASKED QUESTIONS
* FOR DATA TRANSFORMATION
* FOR AUTOMATED GENERATION
PREDICATED FOR ASKED
QUESTIONS
OUTPUTS:
* YES /NO
* NUMBER OF RESOURCES
* SCHEDULES
* MAKESPANS
Fig. 1. Concept of DSS for scheduling problems based on declarative framework.
The range of the decisions made by the system depends on data structures and asked
questions. Thus, the system is very flexible as it is possible to ask all kinds of questions
(write all kinds of predicates). In this version of DSS the questions which can be asked are
the following:
A Declarative Framework for Constrained Search Problems in Manufacturing 247
What is the minimum number of workers necessary for assigned makespan and proper
schedule? (predicate opc_d(L,C)).
What is the minimum makespan at the assigned number of workers and proper
schedule? (predicate opc_g(L,Q).
Is it possible to order new tasks (both orders and projects) for the determined
makespan? (predicate opc_s(L,C)).
What is minimum makespan at the assigned number of workers for new tasks?
(predicate opcd_g(L,Q).
What is the minimum number of workers necessary for assigned makespan for new
tasks? (without changing the schedule of basic set of tasks) (predicate opcd_d(L,C)).
Is it possible to order tasks for the determined makespan ? (predicate opcd_s(L,C)).
Is it possible to order tasks for the determined makespan where the processing time of
task depends on allocated number of workers? (predicate opcd_sl(L,Q).
L  number of workers (manpower), C=C max  makespan
These questions are just examples of questions that the present system can be asked. New
questions are new predicates that need to be created in CLP environment. Two types of
questions are asked in the system:
• About the existence of the solution (eg., is it possible to carry out a new task in the
particular time?, etc.).
• About a particular kind of the solution: find a suitable schedule fulfilling the
performance index, find the minimum scheduling lengthmakespan, find the minimum
number of workers to carry out the task, etc.
The foregoing questions can include a random set of additional renewable resources (in this
case, workers only) and refer a random number of production organization forms (jobshop,
flowshop, openshop, project etc.). Additionally, the presented decision support system
model implements an extra functionality which is resource dependent processing times.
Scheduling problems literature gives the processing time as constant and defined before the
tasks are realized. In practical applications the time is significantly dependent on the
amount of the allocated resources for their realization. These dependencies are usually non
linear and can be presented as a relationship (relational database table) or function. The
system implemented the possibility of changing the time of task/job realization in relation
to the allocated number of workers. The functionality above does not call for the change of
predicates; it requires suitably prepared data describing the problem and included in the
relational database. The proposed structure of the relational database (see Fig. 2.) and the
way CLP predicates are built allow the system to generate both schedules with determined
parameters for different production organization forms, but also include allocation of
additional resources (in general case resource sets) and effects they may have on the realized
tasks.
4.2 Data structures
Data structures were designed in such a way that they could be easily used to decision
problems in a variety of scheduling environments, which is jobshop, flowshop, project or
multiproject. The obtained flexibility resulted from the use of a relational data model.
248
Automation and Robotics
Figure 2 presents the ERD (Entity Relationship Diagram) of the database that was designed
to meet the requirements of cooperation with CLP environment and to have the following
possibilities:
• Storing the data for scheduling problems and resource allocation for different types of
production organisation.
• Storing information about additional resources (e.g. labour force, tools or AGV
vehicles).
• Saving the content and parameters of CLP predicates calls.
• Generating ready scripts for a CLP engine on the basis of the existing data.
• Saving the results obtained with a CLP solver, necessary for further calculations,
visualisations or creating reports.
• Saving data about other problems within the family of constrained search problems.
Eclipse_predicates
id t varch a its') <pk,fk>
name varchaif29") <pk>
body varcha<2000)
Project_types
id t varch arts') <pk>
type_name varchan^CO
Projects
id f varch arts') <pk>
name varchar(20)
id_t varch a <5^ <1k>
calendar
id i varchartS")
id k varchartS")
date varchartS')
<pk.tk>
Operation_tvpes
id o t varchartS") <pk>
name varch a 1(20)
id_c_f varcha<10) <ik>
Operations
id f varch a its') <pk>
id o varchartS") <pk>
id_o_t varch a it's  ) <TV>
name varchar(20)
t_z varcha<10)
t_k varchart'10')
start varcha<10)
Allocations
id i varchartS') <pk.fl<1 ,fl<2>
id o varch arts'] <pk.tk1>
id m varch ar^S"] ="pk.fl<2>
id_c_p varchar(10")
Machines
pk,fk>
id i varch arfS 1 )
id m varch arts') <pk>
name va rch a r(20')
Processing_times
id c i varch artS")
name varch art's)
body varchart^OOO 1 )
Precedence
id i
id o
varch a its') <pk.tk1.fk2>
£ varch artS") <pk.tk1 >
id o d varch a its') =:pk.tk2:=
time varchart^O  )
Allocations R
id i
id o
id z
p_min
p_max
id_c_p
n u m b e r_
varch arts')
varch arts')
varch arts')
varchart'10')
varchart'lO')
varchart'lO')
varchart'lO')
<pk,tk1.tk2>
<pk.fk2>
<pk,rk1>
Resources
id f varch artS") ■=: pk.fl<:>
id z varch artS") <pk>
name varch a [£20")
limitation varcharCZO)
operation_time
id 1
id c
id z
num
time
varch arts')
varch arts')
varch arts')
ber varch arts')
varch arts')
=:pk.fk>
<pk.tk>
<pk.tk>
<pk>
<pk>
login varchartlO") <pk>
password varch, i:
id_f varch arts') <ik>
lnaccessibilitv_of
_machines
id f varch a rtS")
id m varch a rtS")
id k p varch a rtS")
id_k_k varch a^S")
<pk.tk1.tk2>
<pk.fk1>
<pk.tk2>
I n a ccessi b i I i1y_of_reso u rces
id f varch a rtS  ) <pk.fl<1 ,tk2>
id z varch artS") <pk.fl<:1 >
id k p varch a rtS  ) <pk>
id_k_k varchar^S  ) <H*2>
limitation varch
Fig. 2. Schema of database of DSS for production scheduling problems (Entity Relationship
Diagram).
A Declarative Framework for Constrained Search Problems in Manufacturing
249
gener
id f varchart'5')
<pk>
step varcharfS")
<pk>
id_l varchar(5)
<fk>
lines varchar(2000)
type_ lines
id I varcharf51
type varchar(29)
function varchar(2000)
<pk>
Fig. 2b. Schema of the part of database of DSS for an automatic generation CLP predicates
(Entity Relationship Diagram).
Table 1 shows the description of database structure.
Table name
Table description
Column
Column description
Project_types
The types of possible
projects for realization
id_t
project_type_id
type_name
project_type_name
Projects
The specification of
separate projects in
enterprises
id_f
project_id
name
project_name
id_t
project_type_id
Processing_time
s
The list of functions of
time calculation
id_c_f
functioned
name
function_name
body
function_body
Opertaion_types
The list of operation
types
id_o_t
operation_type_id
name
operation_type_name
id_c_f
functioned
Operations
The list of operations to
be realized
id_f
project_id
id_o
operation_id
id_o_t
operation_type_id
name
operation_name
t_z
release time
t_k
critical time
start
start time
Precedence
Defines the sequence of
the realized operations
id_f
projected
id_o_p
operationed
id_o_d
operationed
time
time between operations
Machines
The specification of
available machines for
the operation realization
id_f
projected
id_m
machineed
name
machine_name
Allocations
The allocation of
operation to machines
id_f
projected
id_o
operationed
id_m
machineed
id_c_p
parameters_ofeunction
Resources
The specification of
renewable/ external
resources
id_f
projected
id_z
resourceed
name
resource_name
limitation
resourceeimitation
250
Automation and Robotics
Table name
Table description
Column
Column description
Allocations_R
The allocation of
renewable/ external/
additional resources to
operations
id_f
project_id
id_o
operation_id
id_z
resource_id
p_min
min number of allocated
resource
p_max
max number of allocated
resource
id_c_p
parameters_of_function
number_r
number of allocated resource
Calendar
The specification of
planning/ scheduling
periods
id_f
project_id
id_k
period_number
date
starting_date
Inaccessibility_
of_machines
The specification of
inaccessibility of
machines
id_f
project_id
id_m
machine_id
id_k_p
number of initial period
id_k_k
number of final period
Inaccessibility_
of_resources
The specification of
limitation/ inaccessibilit
y of resources
id_f
project_id
id_z
resource_id
id_k_p
number of initial period
id_k_k
number of final period
accessibility
number of accessible resources
Type_lines
id_l
line generation type
type
type description
function
function (in script language)
Gener
Describes the process of
model generation for
Eclipse
id_f
project_id
step
number of generation step
id_l
line generation type
lines
line to be made
Eclipse_predicates
The codes for the ready
predicates of Eclipse
id_f
projected
name
name of predicate
body
code of predicate
Users
login
login
password
password
id_f
project_id
Table 1. Description of database structure.
5. Implementation of DSS based on declarative framework
We propose ECDPS e (http://www.cs.kuleuven.ac.be, 2008, Apt & Wallace, 2007) and SQL
database as a platform to decision support in scheduling problems. ECDPSe is a software
A Declarative Framework for Constrained Search Problems in Manufacturing
251
system  based on the CLP paradigm  for the development and deployment of constraint
programming applications. It is also ideal for developing aspects of combinatorial problem
solving, e.g. problem modelling, constraint programming, mathematical programming, and
search techniques. Its wide scope makes it a good tool for research into hybrid problem
solving methods. ECLiPS e comprises several constraint solver libraries, a highlevel
modelling and control language, interfaces to thirdparty solvers, an integrated
development environment and interfaces for embedding into host environment. The
ECUPS 6 programming language is largely backwardcompatible with Prolog and supports
different dialects.
The novelty of the proposed approach is in the integration of the CLP methodology with a
commonly used relational database model. The scripts started by a CLP engine are
generated automatically on the basis of data in the database (numerical values and CLP
predicates). The proposed solution makes it possible to easily develop the system
(developing and saving in the database the content of additional CLP predicates) and to
integrate it with other computer systems based on a relational SQL database (Fig. 3.). Owing
to the developed database structure (see Fig. 2.) solving other problems of the constrained
search problems class is possible. In order to ensure an automatic generation of the
production scheduling problem model in the form of a script with CLP predicates, two
additional tables were added to the database (Fig. 2b). The gener table describes the model
schema as lines containing the model's identity {id J), generating step [step) and the identity
of the line type that is to be written in the CLP script (id_l) with its source (lines). The type of
the generated line is determined from the entry in the table type lines. The model (CLP
script) distinguishes lines created among others as inserting CLP predicate (line in the
eclipse predicates table), inserting data after SQL statement, inserting a comment, heading,
etc; thus the relation between tables gener and typejines is 1:N type (Fig. 2b.).
GUI
CUP ENGINE
(Eclipse)
SCRIPT
UANGUAGES
Framework
for CUP predicate
generation
SQURDMBS
Data structures
and integrity constraints
GUI Framework
Data
Numerical data in relational model
Structure of CUP predicates
for automated generation
CUP predicates
Fig. 3. Implementation of the declarative framework of DSS.
252
Automation and Robotics
6. Illustrative examples
After the complete implementation of the DSS into ECDPSe and SQL environments,
computation experiments were carried out. The jobshop scheduling problem with
manpower resources (Example 1) and project building house (Example 2) were considered.
The proposed illustrative examples cover a wide range of scheduling problems encountered
in the SMEs (Small and Medium Sized Enterprises). The examples are selected in such a way
that they how two extremely different forms of production organization; repetitive
production in the jobshop environment and the unique production including the project.
The presented methodology makes solving scheduling problems possible also in indirect
methods of production organization. Moreover, the examples are larded with problems of
constrained resources (e.g. manpower, specialized machines, etc.) and the dependence of
particular jobs processing time on the amount of the allocated resources, for instance
6.1 Example 1 the job shop scheduling
In the classical scheduling theory job processing times are constant (Example_la). However,
there are many situations where processing time of a job depends on the starting time of the
job in queue or the amount of allocated additional resources (e.g. people) (Example_lb) etc.
The parameters of computational examples are presented in table 2. The job data structures
are shown in Fig. 4a and Fig. 4b
— job A
— machine s = 1
— processing time p l = 10
— number of workers for operation Uj = 2
j=A[(l } 10,2),(2,20,2),(3,15,3),(4,15,2), ]
(7
operation o = 1
Fig. 4a. Description of task (job) data structure for jobshop computational example
(Example_la)  the constant processing times.
J =
job A
machine s = 1
I processing time f(uj)
^ ^ number of workers for operation
A[(l,fl[u 1 ),u 1 ),(2 > fl[u 2 ),Ti a ),(3,f(ii 9 ),TiO, ]
operation o = 1
Fig. 4b. Description of task (job) data structure for jobshop computational example
(Example_lb)  the processing times depend on allocated number of workers.
je{A,B,C,D,E}, oe {1,2,3,4,5}, se {1,2,3,4,5}
j=A [(1,10,2), (2,20,2), (3,15,3), (4,15,2), (5,15,1)]
j=B[(l,10,l), (2,20,1), (3,15,2), (4,15,1), (5,20,1)]
€[(5,15,2), (4,20,2), (3,15,1), (2,10,2), (1,20,2)]
j=D[(l,10,3), (3,15,2), (2,20,2), (4,20,1), (5,10,2)]
j=E[(5,15,2), (4,10,1), (3,15,2), (2,10,2), (1,20,1)]
Table 2. (Example_l)  constant processing times
A Declarative Framework for Constrained Search Problems in Manufacturing
253
For the computational example (Example_la) the following questions (write following
predicates) were asked:
• opc_g(^_) (see Fig. 5.).
• oyc_&(_, 120) (see Fig. 6.).
• ofc_s(4: l 155) (see Fig. 7.).
• opc_s(4,180) (see Fig. 8.).
• oj)c_g(5,J (see Fig. 9.).
Cmax= 120
S=1
D. 
Bl 
Al
1
E5 
C5
S=2
1
B2
A2
1 E4 H
D3

S=3
D2
E3
B3 
1 A3 
S=4
 E2
B4
_1
S=5
El
1
B5
A5 D5 
70 80 90 100 110 120 t
10 20 30 40 50 60 70 80 90 100 110 120 t
Fig. 5. Gantt's charts for the answer to the question implemented in predicate opc_g(^J),
C max *=120, L=7 (ExampleJLa).
Cmax = 120
S=1
D.
Al
B. 
E5
1 1
r
S=2
A2
1
B2
1
E4
D3
C4 
p
S=3
D2
1
E3
A3
1
B3
■
C3
1
I
_
S=4
E2
C2
■
A4
B4
D4
I
S=5
El
~1
M
1

A5
I
B5
D5 
20 30 40 50
70 80 90 100 110 120 t
3
70 80 90 100 110 120 t
Fig. 6. Gantt's charts for the answer to the question implemented in predicate oj)c_d(^120),
L min =6, C max = C max * =120 (Example_la).
254
Automation and Robotics
loading CPLEX 75 done
Eplex warning: No licensing information available.
Use lp_get_license/2 or update license info database
K/E/eci/lib/eplex_lic_inf o .eel
EGLiPSe Constraint Logic Programming System [kernel]
Kernel and basic libraries copyright Cisco Technology Inc
Academic licensing through Imperial College London, see legalZlicence_acad.txt
GMP library copyright Free Software Foundation, see legal/lgpl.txt
For other libraries see their individual copyright notices
Version 5.8 H103, Thu Aug 18 00:06 2005
[eclipse 11: a3 .
C = 155
L = 4
opc_s<4,155>
lists. eco loaded traceable bytes in 0.00 seconds
No <0.02s cpu>
[eclipse 21: _

Fig. 7. Answer to the question implemented in predicate oj)c_s(4: r 155)  No (Example_la).
[loading CPLEX 75 ... done
Eplex warning: No licensing information available.
[Use lp_get_license/'2 or update license info database
//E/ecl/lib/eplex_lic_inf o .eel
ECLiPSe Constraint Logic Programming System [kernel]
Kernel and basic libraries copyright Cisco Technology Inc
Academic licensing through Imperial College London, see legalZlicence_acad.txt
GMP library copyright Free Software Foundation, see legal/lgpl.txt
For other libraries see their individual copyright notices
Jersion 5.8 1*103, Thu Aug 18 00:06 2005
[eclipse 1]: a4.
C = 170
L = 4
npc_sC4,170>
lists. eco loaded traceable bytes in 0.00 seconds
Liczba pracownikow :4
¥es <0.25s cpu, solution 1, maybe more) ?
[eclipse 2]:
1

Fig. 8. Answer to the question implemented in predicate opc_s{4i,170)  Yes (Example_la).
D, 
B, 
1
Al
1
E5
I
I
C5 
I
B2
1
A2
D3
1 E4
D2
B3
1
E3
A3
C3 
1
C2
E2 
1
B4
A4
D4
I
C,
1 "
1
B5
A5
I ™ 
10
20
30
40
50
60
70
80
90
100
110
120
130 t
Fig. 9. Gantt's charts for the answer to the question implemented in predicate oj)c_g(5,^},
C max *=l35 r L=5 (Exampleja).
Predicate
L
*~max
Yes
No
Time (s)
1
Opc_g(_,J
7
120
—
—
0,13
2
Opc_d(^120)
6
120
—
—
0,35
3
V c_s(4,155)
4
155
NO
0,02
4
Opc_s (4,170)
4
170
YES
0,25
5
Opc_g(5,J
5
135
—
—
1,35
Table 3. (Example_la)  Results of asked predicates (Fig.59).
A Declarative Framework for Constrained Search Problems in Manufacturing
255
The second version of computational example (Example_lb) was carried out with
processing times of operation/ activity dependent on allocated additional resource
(workers). The parameters of computational Example_lb are presented in table 2 without
processing times and number of allocated people. The processing time is a function of
allocated workers f(pj,aj,Uj) Fig. 10.
f(p j ,a j ,u j ) = R  aj *(uj  Xj)
and
f (pj^Uj) > ,
aj =5, Xj < Uj <2*Xj
where :
Pi
Ui
Xj
 processing time from Example_l
 number of allocated workers
 number of allocated workers from Examle_la
 acceleration factor
Fig. 10. Processing time for Example_lb.
There is a simple linear function in this example. It can be any function in general case or
relationship (relational database table). For the computational example (Example_lb) the
following questions (write following predicates) were asked:
• opc_g(^_) (see Fig. 11.).
• oy)c_s(8,80) (see Fig. 12.).
• opc_d(^60) (see Fig. 13.).
• oj)c_s(6,60) (see Fig. 14.).
Cmax = 65
Bl
dTJ
Al
E5
B2
A2
E4 D3 C4
D2 E3 B3
B4
A4
D4
El
B5
A5 D5
Bl
El
Al
1)2
E3
B2
A2
CI
E5
E5
C2
EH
A3 A4 J5^^™
E4 ' «1 C5
3 D3 m
B5
A5
D5
Fig. 11. Gantt's charts for answer to the question implemented in predicate oj)c_g(^^},
Cmax*=65, L=14 (ExampleJLb).
256
Automation and Robotics
loading CPLEX 75 ... done
Eplex warning: No licensing information available.
Jse lp_get_license/2 or update license info database
•/E/ecl/lib/eplex_lic_inf o .eel
***** Warning: Singleton variables in clause i of si/4: Ludzie
ECLiPSe Constraint Logic Programming System [kernel]
Kernel and basic libraries copyright Cisco Technology Inc
Academic licensing through Imperial College London, see legalZlicence_acad.txt
GMP library copyright Free Software Foundation, see legal/lgpl.txt
For other libraries see their individual copyright notices
Uersion 5.8 S103, Thu Aug 18 80:06 2005
[eclipse i]: b4.
C = 80
L = 8
DPC_S<8,80>
lists. eco loaded traceable bytes in 0.00 seconds
Licsba pracounikou :8
¥es (0.64s cpu, solution 1, maybe more} ?
[eclipse 2]:

Fig. 12. Answer to the question implemented in predicate opc_s(8,80) 
Cmax = 65
Yes (Example_lb).
Bl
Dl
Al
E5
B2
A2
E4
D3
C4
D2
B3
E3
A3
C3
C2
E2
B4
A4
D4
80 t
Fig. 13. Gantt's charts for answer to the question implemented in predicate oyc_&{_,65),
' =65 (Example_lb).
loading CPLEK 75 ... done
Eplex warning: No licensing information available.
Jse lp_get_license/2 or update license info database
•/E/ecl/lib/eplex_lic_inf o .eel
***** Warning: Singleton variables in clause 1 of si/4: Ludzie
ECLiPSe Constraint Logic Programming System [kernel]
Kernel and basic libraries copyright Cisco Technology Inc
Academic licensing through Imperial College London, see legalZlicence_acad.txt
GMP library copyright Free Software Foundation, see legal/lgpl.txt
For other libraries see their individual copyright notices
Uersion 5.8 U103, Thu Aug 18 00:06 2005
[eclipse 1]: b5 .
C = 60
L = 6
DPC_S<6,60>
lists. eco loaded traceable bytes in 0.00 seconds
Mo <0.05s cpu>
[eclipse 2]: _
Fig. 14. Answer to the question implemented in predicate oj)c_s(6,60)  No (Example_lb).
A Declarative Framework for Constrained Search Problems in Manufacturing
257
Predicate
L
*— max
Yes
No
Time (s)
1
Opc_g(^J
13
65
—
—
0,14
2
Opc_d(^65)
10
65
—
—
17,84
3
Opc_s(8,80)
8
80
YES
0,64
4
Opc_s(6,60)
6
60
NO
0,05
Table 4. (Example_lb)  Results of asked predicates (Fig.1114).
6.1 Example 2 Project scheduling  building a house
A typical modernday project has a variety of complications not considered in the original
PERT/CPM methodology. There are three particular situations:
• You may be able to accelerate the completion of a project by speeding up or "crashing"
some of the activities in the project.
• Your ability to finish a project quickly is hindered by limited resources (e.g., two
activities that might otherwise be done simultaneously, in fact have to be done
sequentially because they both require a crane and you have only one crane on site).
• How long it takes to do each activity is a random variable.
In table 5, we list the activities involved in a simple, but nontrivial, project of building a
house. An activity cannot be started until all of its predecessors are finished. The network
activity for this project has been shown in Fig. 15. To solve this example the DSS with
declarative programming (section 4) was used. In this example the processing times of
activities depend on allocated manpower resource.
On.
Activity Time
Min_MAN
Max_MAX
Name of activity
1
10
2
2
Dig Basement
2
12
4
6
Pour Foundation
3
6
1
3
Pour Basement
4
6
2
3
Install Floor Joists
5
6
1
3
Install Walls (ext)
6
4
2
8
Install Rafters
7
4
2
4
Install Walls (int)
8
4
2
2
Install Roof
9
16
4
8
Install Windows, Doors (ext)
10
12
4
8
Install Networks
11
12
6
8
Interior Plastering
12
4
2
4
Painting (int)
13
6
2
3
Finish Interior
14
18
6
9
Finish Terrace
15
4
2
4
Garden Arrangement
16
18
6
12
Exterior Plastering
MIN_MAN  minimum manpower (workers) for activity.
MAX_MAN  maximum manpower (workers) for activity.
Table 5. Parameters of Example_2
258
Automation and Robotics
Fig. 15. Activity network for Example_2.
For the computational example the following questions (write following predicates) were
asked (see section 4):
• oj)c_g(l50,200 (see Fig. 16., Table 6,7).
• opc_g(5,400) (see Fig. 17., Table 6,7).
• o V c_g(7,200) (see Fig. 18., Table 6,7).
• oj)c_g(12,200)  processing times of jobs dependent on the allocated additional resource
(workers) (see Fig. 19., Table 6,7).
loading OS I clpcbc ... done
*** Warning: Singleton variables in clause 1 of ssu_g/2: Pocz
*** Warning: Singleton variables in clause 1 of sl/2: Ludzie
WARNING: predicate declared but not defined in b/0 in module funkcje
ECLiPSe Constraint Logic Progranning System [kernel]
Kernel and basic libraries copyright Cisco Systems, Inc.
and subject to the Ciscostyle Mo 2 ilia Public Licence 1.1
(see legal/cmpl.txt or uuu. eclipseclp.org/licence>
Source available at www.sourceforge.org/projects/eclipseclp
GMP library copyright Free Software Foundation, see legal/lgpl.txt
For other libraries see their individual copyright notices
Uersion 5.10 #33, Sun Oct 29 02:05 2006
[eclipse II: opc_g<150,200> .
lists. eco loaded traceable bytes in 0.02 seconds
Pound a solution with cost 112
*
Ves (0.05s cpu,
[eclipse 2]:
solution 1, maybe more>
J
Fig. 16. Answer to the question implemented in predicate opc_g(150,200)  Yes (Example_2).
■Jl l dWJJJilWWItMMM I
b\i386_nt\eclipse.exe
loading OSI clpcbc ... done
***** Warning: Singleton variables in clause 1 of szu_g/2: Pocz
***** Warning: Singleton variables in clause 1 of sl/2: Ludzie
WARNING: predicate declared but not defined in b/0 in module funkcje
ECLiPSe Constraint Logic Programming System [kernel]
Kernel and basic libraries copyright Cisco Systems, Inc.
and subject to the Ciscostyle Mozilla Public Licence 1.1
(see legal/cmpl.txt or www.eclipseclp.org/licence>
Source available at www.sourceforge.org/projects/eclipseclp
GMP library copyright Free Software Foundation, see legal/lgpl.txt
For other libraries see their individual copyright notices
Jersion 5.10 833, Sun Oct 29 02:05 2006
[eclipse 1]: opc_g(5,400> .
Mo (0.00s cpu)
[eclipse 21:
50
1
lL
J
Fig. 17. Answer to the question implemented in predicate opc_g(5,400)  No (Example_2).
i les\ECUPSe 5 . 1 0\li b\i 3 8 6_nt\ec li ps<
loading OSI clpcbc ... done
***** Warning: Singleton variables in clause 1 of szu_g/2 : Pocz
***** Warning: Singleton variables in clause 1 of sl/2: Ludzie
WARNING: predicate declared but not defined in b/0 in nodule funkcje
ECLiPSe Constraint Logic Programming System [kernel]
Kernel and basic libraries copyright Cisco Systems, Inc.
and subject to the Cisco— style Mozilla Public Licence 1.1
(see legal/cmpl.txt or www.eclipseclp.org/licence>
Source available at www.sourceforge.org/projects/eclipseclp
GMP library copyright Free Software Foundation, see legal/lgpl.txt
For other libraries see their individual copyright notices
Jersion 5.10 #33, Sun Oct 29 02:05 2006
[eclipse 13: opc_g(7,200> .
lists. eco loaded traceable bytes in 0.01 seconds
Pound a solution with cost 128
Pound no solution with cost 112.0 .. 127.0
res (0.44s cpu,
[eclipse 21:
solution 1, maybe nore) ?
Fig. 18. Answer to the question implemented in predicate opc_g(7,200)  Yes (Example_2).
A Declarative Framework for Constrained Search Problems in Manufacturing
259
VECLiPSe 5.10\lib\i3B6_nt\eclips(
, □ x
loading OSI clpcbc ... done
*** Warning: Singleton variables in clause 1 of szu_g/2: Pocz
*** Warning: Singleton variables in clause 1 of sl/2: Ludzie
WARNING: predicate declared but not defined in b/0 in module funkcje
ECLiPSe Constraint Logic Prograriming System [kernel]
Kernel and basic libraries copyright Cisco Systems, Inc.
and subject to the Ciscostyle Mozilla Public Licence 1.1
(see legal/cmpl.txt or www.eclipseclp.org/licence>
Source available at wwu.sourceforge.org/projects/eclipseclp
GMP library copyright Free Software Foundation, see legal/lgpl. txt
For other libraries see their individual copyright notices
Jersion 5.10 tt33. Sun Oct 29 02:05 2006
[eclipse i ] : opc_g<12,200> .
lists. eco loaded traceable bytes in 0.00 seconds
Pound a solution with cost 89
j
¥es (0.03s cpu,
[eclipse 2]:
solution 1, maybe more) ?
Fig.19. Answer to the question implemented in predicate op c_g (12,200) Yes (Example_2).
On.
Predicate
L
C
Yes No
Time (s)
1
Opc_g(150,200)
8
112
YES
0,05
2
Opc_g(5,400)
5
400
NO
0,00
3
Opc_g(7,200)
6
128
YES
0,44
4
Opc_g(12,200)
12
89
YES
0,03
Table 6 (Example_2) Results of asked predicates (Fig.1619).
On.
Opc_g(150,200)
Opc_g(5,400)
Opc_g(7,200)
Opc_g(7,200)
1
—
0(2)
2
10
—
10
10(6)
3
22
—
22
20(3)
4
28
—
2
24(3)
5
28
—
28
24(3)
6
34
—
34
28(3)
7
34
—
34
29(4)
8
38
—
38
31(2)
9
42
—
42
35(8)
10
42
—
58
35(4)
11
58
—
70
47(8)
12
70
—
82
57(2)
13
70
—
82
57(3)
14
76
—
88
62(9)
15
76
—
106
62(2)
16
94
—
110
77 (12)
Table 7 (Example_2) Result of asked predicatesstart times of activities (additional number
of allocated workers only for predicate Opc_g(7,200)).
The results obtained for illustrative examples confirm suitability of the proposed framework
for building decision support systems in constrained search problems. In scheduling
problems the decision maker is provided with support related to possibilities of task
accomplishment in the set time, necessary resources and their exploitation in time,
possibilities of the realization of other tasks, decision optimization, etc.
260 Automation and Robotics
7. Conclusions
The proposed approach can be considered to be a contribution to scheduling and especially
to scheduling problems with additional/ external resources. In many enterprises this kind of
resources can have an influence on production and delivery schedules. That is especially
important in the context of cheap, fast and user friendly decision support in SMEs. Great
flexibility of the presented approach and practically unlimited possibilities of asking
questions through creating predicates cannot be overestimated. What is more, the whole
decision system can be built in one modeling and programming declarative environment,
which lowers costs and adds to the solution effectiveness. The CLPtools fulfill the need of
intelligent production management structures and can be based successfully in cases of
scheduling problems with external resources. The proposed approach seems to be a viable
alternative option for supporting quite a number of decision making processes. The
originality of our approach, which achieves the transition from custom imperative
programming to declarative programming in a field of scheduling problems, consists in the
data structure and CLP implementation. The presented framework can be implemented in
many other constrained search problems apart from scheduling such as planning, routing,
placement etc.
8. References
Liao S.Y., Wang H.Q., Liao L.J. "An extended formalism to constraint logic programming for
decision analysis, Knowledgebased Systems" 15, 2002, pp 189202.
Pape C.Le "Three Mechanisms for Managing Resource Constraints in a Library for
ConstraintBased Scheduling Proceedings" INRIA/IEEE Conference on Emerging
Technologies and Factory Automation, 1995.
Ryu U. Young ."Constraint logic programming framework for integrated decision supports"
Decision Support Systems 22, 1998, pp 155170.
Bisdorff R., Laurent S. "Industrial linear optimization problem solved by constraint logic
programming", European Journal of Operational Research 84 (1), 1995, pp 8295.
Lamma E., Mello P., Milano M. "A distributed constrainedbased scheduler", Artificial
Intelligence in Engineering 11,1997, pp 91105.
Lee H.G., Lee G. Yu., "Constraint logic programming for qualitative and quantitative
constraint satisfaction problems", Decision Support Systems 16 (1), 1996, pp 6783.
http : / / www . cs .kuleu ven. ac .be/
Apt K.R., Wallace M.G. "Constraint Logic Programming using ECLiPS e ", Cambridge, 2007
15
Derivation and Calculation of the
Dynamics of Elastic Parallel Manipulators
Krzysztof Stachera and Walter Schumacher
Technical University of Braunschweig, Institute of Control Engineering
Germany
1. Introduction
Many algorithms for the modelling and calculation of the dynamics of rigid parallel
manipulators already exist, and are based on two approaches: The NewtonEuler method
and the Lagrangian principle. For the NewtonEuler method the dynamics equations are
generated by the complete analysis of all forces and torques of each rigid body in the robot's
structure (Featherstone & Orin, 2000, Spong & Vidyasagar, 1989). Therefore, the derivation
of the equations of motion for complex systems becomes very complicated and laborious.
However, due to the fact that all forces are explicitly regarded and analysed, this method
supplies a very advanced understanding of the system's dynamics. The use of the
Lagrangian principle is a much more elegant and efficient procedure. A scalar function
called the Lagrangian is generated, and describes the entire kinetic, potential and dissipative
energy of the system in generalized coordinates. For parallel manipulators, additional
equations which describe the closed kinematic loop constraints, still have to be provided.
The equation of motion for the parallel structure consists thus of the system of Lagrange and
algebraic equations (DAE).
The Lagrangian method is very widely used in the area of parallel manipulators (Beyer,
1928, Kock, 2001). In particular, two procedures from this family are established here:
Namely the Lagrangian equations of the first type (Kang & Mills, 2002, Miller & Clavel,
1992, Murray et al., 1994, Tsai, 1999) and the LagrangeD'Alembert formulation (Nakamura,
1991, Nakamura & Ghodoussi, 1989, Park et al, 1999, Stachera, 2006a, Stachera, 2006b, Yiu et
al., 2001). The use of generalized coordinates is employed in these procedures. Those being
the coordinates of the active joints as well as an additional set of redundant coordinates of
the passive nonactuated joints or endeffector coordinates. Active joints are the actuated
joints of the machine. In the case of elastic manipulators a set of elastic degrees of freedom
(DOF) will be introduced. In these generalized coordinates the energy function will be
formulated. Additionally, the closed kinematic loop constraints of the parallel structure
must also be considered. In the Lagrangian equations of the first type this is achieved by
Lagrange multipliers. Contrary to these equations, for the LagrangeD'Alembert
formulation, the Jacobian matrices of the kinematic constraints parameterised by the non
redundant coordinates are used. The policy with the Jacobian matrix has the great
advantage that the well known methods and techniques for the modelling of the
manipulator's chain dynamics, which were already applied to serial elastic robots can be
262 Automation and Robotics
used (Khalil & Gautier, 2000, Piedboeuf, 2001, Robinett et al, 2002). In this way, effects of
friction, elasticities, etc. can be considered by the modelling of the dynamics without
laborious modifications. This procedure provides compact equations of the manipulators
dynamics, which is advantageous for system analysis and control design. The problem
arises with the calculation of the direct dynamics of both presented approaches; it requires
the inversion of the inertia matrix, which can be CPUintensive for matrices of higher order
and can thereby constitute a limitation in the realtime calculation for control purposes. The
consideration of the manipulator's elasticities can introduce matrices of such high order. The
partitioning of the dynamics equations into many groups and their calculation in parallel
can reduce the computational effort. Approaches, which consider this problem can be found
in the literature. A virtual spring approach has been proposed for this type of parallel
processing (Wang & Gosselin, 2000, Wang et al., 2002). In this method, the modelling
technique requires the modification of the model and the introduction of additional
elements. In the case of elastic manipulators it seems to be a not desirable procedure.
Firstly this chapter presents a brief description of the two above mentioned Lagrangian
based methods. It will be shown, how the equations of the inverse and direct dynamics can
be obtained, subsequently, the main features of these methods are discussed. These
formulations will be extended in comparison with previous research to consider the elastic
degrees of freedom. The presentation of elasticities as discrete degrees of freedom does not
introduce any limitations of the method and is a conventional method for the analysis of
elastic robots (Beres & Sasiadek, 1995, Robinett et al., 2002). In addition to that, a new
method for the derivation of the Jacobian matrix of the parallel manipulators will be
presented (Stachera & Schumacher, 2007). This method allows the Jacobian matrix of the
parallel manipulator to be derived systematically from the Jacobian matrices of the
individual serial kinematic chains. Based on these procedures, the method  Simultaneous
Calculation of the Direct Dynamics (SCDD) for elastic parallel manipulators will be presented.
The idea of the " reduced system", which was already used to calculate the inverse
dynamics, will be considered. The kinematic constraints of the closed loops are introduced
here with the help of the forces and torques of the tree structure. Therefore the equations
remain simple and their complexity should not rise. This feature is very important for
simulations, for the application of an observer for complex systems or in a feedback control.
The new method will then be compared with the existing one and the results will be
discussed thereafter.
2. Lagrangian equations of the first type
The Lagrangian equations of the first type are formulated in a set of redundant coordinates
(Kang & Mills, 2002, Miller & Clavel, 1992, Tsai, 1999). We assume that the manipulator
possesses in all n joints, e and /? of them are respectively discrete elastic DOF and passive
joints as redundant coordinates. All of which joints have one degree of freedom.
Coordinates of the endeffector or moving platform can be also used as redundant
coordinates. The coordinates of the actuated joints n a and the elastic DOF n e =e form a set of
nonredundant coordinates. We assume the controllability of the manipulator structure in
absence of elasticity. The coordinates of the structure are:
q t =qt(qa,q P ,q e ), (1)
Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators 263
where q a e R (naxl) , q p e R (npxl) t q e G R( nexl ) anc j th e dimension of q t e R (ntxl) , where n t =n a +
n p +n e . The q t coordinates comprise the redundant degrees of freedom of the rigid
movement of the manipulator augmented by degrees of freedom of the elastic deformation
of the robot's structure. The redundant coordinates of the passive joints q p depend on the
remaining coordinates:
q P =q P (qa,q e ). (2)
Using (2) we can further write (1) as q t = qt (q a , q e ). In order to solve the dynamics equation,
due to redundant coordinates, the formulation of dynamics requires a set of additional
constraint equations. These can be determined by examining the structure of the system,
with respect to the closed kinematic loop constraints of the parallel manipulator. The
constraints equations and their derivatives supplement the original equations of the
machine dynamics, so that the number of equations is equal to that of the unknowns.
Therefore the Lagrangian equations of the first type are formulated as follows
d dU dU dQ t a. ah, ...
+ — ^ = x t + y \i — , (3)
dt dq t dq t dq t i=i dq t
where L t is the Lagrange function consists of the kinetic and potential energy of the system,
Qt means the function of the dissipative energy, hi denotes the i th constraint function, n p is
the number of constraints and at the same time number of redundant coordinates, it are the
generalised torques and forces and A* are the Lagrange multipliers. In order to simplify the
solution of these equations, they will be divided into two sets (Tsai, 1999).
2.1 Inverse dynamics
The first set of n p equations refers to the redundant coordinates and is associated with the
kinematic constraints of the closed loops. Here, the unknowns are the Lagrange multipliers
Xi e R (npxl) . Hence, these equations take the form
*p dh d dU dU 5Q t . (A .
^Ai = ; 1 ; T t , (4)
i= i dq t dt dq t dq t dq t
where x t represents generalised torques and forces. They represent the external potential
and nonpotential forces, acting on the manipulator, which are already known. Here, the
torques of the actuators are not taken into account. From these n p equations of the
redundant coordinates the n p Lagrange multipliers are calculated. The second set is related
to the (n a +n e ) nonredundant coordinates. The only unknowns in these equations are the
forces and torques of the actuators, which can be computed from
d du eu dQ t x. ah,
T t = ; 1 ; 2j Ai • (O)
dt dq t dq t dq t i=i dq t
With these two equation sets (4) and (5), the torques and forces of the actuators for a given
trajectory are computed, and thus produce the desired movement of the elastic parallel
manipulator.
264 Automation and Robotics
2.2 Direct dynamics
For the given torques, the direct dynamics can be computed in a similar way. The n p
redundant coordinates and their derivatives are calculated from the closed kinematic loop
constraints hi and their derivatives. These redundant coordinates result from the non
redundant coordinates of the active joints and elastic DOF. The constraint forces of the
structure are then computed (4). Finally, now that the input torques of the parallel
manipulator and the constraint forces are known, (5) must be solved for the unknown
accelerations of the nonredundant coordinates. Further, these equations can be solved by
numerical integration, and the n p Lagrange multipliers from (4) can also be computed on
this way.
2.3 Features of the method of the Lagrangian equations of the first type
The coordinates of the active joints and elastic DOF form a subset of the selected generalised
redundant coordinates. The remaining coordinates can be selected freely. These can be the
coordinates of the platform, the endeffector or of the passive joints (Kang & Mills, 2002,
Miller & Clavel, 1992, Tsai, 1999). Here the Lagrange multipliers might also have the
meaning of generalised torques and forces, which determine the constraints of the closed
loops for the serial kinematic chains. The disadvantage of this method is that, for the
modelling of the manipulator, various simplifications must be made. In order to consider
the Lagrange multipliers, the methods for the modelling of the dynamics that are used for
the serial kinematic chains can require a modification. However, due to the equations 7
structures, a clear physical interpretation of the terms is not always possible, and therefore
the employment of this method remains slightly complicated.
3. LagrangeD'Alembert formulation (LD'A)
3.1 Inverse dynamics
The LagrangeD'Alembert formulation represents an elegant and effective consideration of
the problem of manipulator's dynamics (Nakamura, 1991, Nakamura & Ghodoussi, 1989,
Park et al., 1999, Yiu et al., 2001). Here, no additional multipliers are calculated. A set of
independent and dependent generalized coordinates which satisfy the constraints of the
mechanical system is chosen. The coordinates of the elastic DOF belong to the group of
independent coordinates and are associated with the corresponding internal forces,
resulting from the stress induced in the material. The procedure corresponds to the
methods, which are known from the serial manipulators and consists of the following three
steps:
1. Transformation of the System: Each closed kinematic loop of the parallel manipulator is
separated at a passive joint, endeffector or link. The result is a tree structure as a
reduced system (Nakamura & Ghodoussi, 1989). Consequently, only serial kinematics
chains can be found in this system. Furthermore it is assumed that all remaining passive
joints are equipped with virtual actuators.
2. Computation of the Torques: The torques and forces of the real and virtual actuators are
computed for each kinematic chain. These torques and forces cause a movement in
every chain, and these movements correspond to the movement of the original closed
link structure.
3. Transformation of the Torques: The torques and forces of the original parallel
manipulator's actuators are calculated from the forces and torques of the tree structure
by considering the additional closed kinematic loop constraints.
Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators 265
We assume that the manipulator consists of I closed kinematic loops. It possesses in all n
joints, e and p of them are respectively discrete elastic DOF and passive joints. All of which
joints have one degree of freedom. The coordinates of the active joints and elastic DOF form
a set of nonredundant coordinates. We assume the controllability of the manipulator in
absence of elasticity. According to the first step we divide this system into a tree structure.
The number of active joints remains the same as in the original structure n a = (npe). The
number of passive joints amounts to n p = (pl) and the number of the elastic DOF amounts
to n e =e. The coordinates of the tree structure are:
q t =qt(qa,q P/ q e ), (6)
where q e e R (naxl) t q p e R< n P xl ) f q e e r^* 1 ) anc j t ^ e di mens i n of q t e R (ntxl) A where n t =n a +
n p +n e . The redundant coordinates of the passive joints q p depend on the coordinates of the
active joints q a and the elastic DOF q e :
q P
q P (qae), (7)
where q ae e R (naexl) and n ae =n a +n e . Using (7) we can further write (6) as q t = qt(qae).
Generally, the relation represented in (7) does not exist analytically, but the quantity of
redundant coordinates can always be determined by the consideration of the geometrical
dependencies in the manipulator structure (Merlet, 2000, Stachera, 2005). Therefore, in order
to determine the relationship between the velocities and accelerations of the active and
passive joints, a more suitable solution must be derived (Yiu et al., 2001). For this purpose
we introduce the closed kinematic loop constraints of the parallel manipulator:
h(q t ) = h(q ae/ q p )=0. (8)
By differentiation of (8) we obtain the constraints in the Pf affian form:
dh . dh .
^q ae +^q P =0. (9)
dq ae dq p
Our goal is now to find the transformation between the tree structure and the original
parallel manipulator. According to the D'Alembert principle the performed virtual work for
both systems, the reduced and the original one, has to be equal:
6q c T x c = 5q t T T t , (10)
where x t e R (ntxl) represents all forces and torques of the real and virtual drives of the tree
system and x c e R (naexl) the drive torques of the original parallel manipulator. Hence, the
Lagrange equations for the reduced system can be formulated:
r d dU dL t gQt V
dt dq t dq t dq t
6q t =0, (11)
where L t is the Lagrange function of the tree structure and Q t is the function of the
dissipative energy. This Lagrange function consists of the kinetic and potential energy of the
266
Automation and Robotics
system L t = T t  V t . We assume that the robot is normally actuated and away from actuator
singularity. The matrix from (9) — is square and invertible. The configuration space of
dq p
the manipulator can be smoothly parameterised by the coordinates of the active joints and
the elastic DOF q ae :
ah
3q P T
f ah A
dqL
dq p
dq T ae
(12)
Therefore the equations of the tree structure can be expressed in the nonredundant
coordinates q ae . Considering (6), (11) and (12):
d dU dU 5Q t
■ + —= T a ,
dtdq
5q ae dq a ,
5q a ,
+
d dU dU dQt
+ — — Tj
dt dq p dq v dq v
(13)
Sq p =0
and it is:
d dU dU 5Q t
dt dq ae dq ae dq a ,
3q
dqL
dq v
\ T
(14)
dqL
_d_aL L _au dq^
v dtaq p a qp aq py
The equations of motion of the entire parallel manipulator are similar to (11) and take the
following form:
d <9L C
3L C 3Q C
 + 
dt dq ae dq ae dq ai
Regarding (10), (14) and (15) we can finally write:
T c .
(15)
d 6L C 6L C dQ c
dt dq ae dq ae dq ai
r d_dL^_dU_ dQ^
dt dq ae dq,
dq P
dq ai
(16)
dqL
_d_aL L _aL L aa
dt aq p dq p aq p j
T ae +
dq P
aqL
(17)
From these derivations, the transformation matrix between the tree structure and the
original closedlink structure can be formulated:
Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators 267
dqae
I
dq P
dqle
(18)
Proofs of these derivations can be found in works (Nakamura, 1991, Nakamura &
Ghodoussi, 1989).
Now, the equations of the manipulator's dynamics will be written in matrix form. The
equations of motion of the tree structure are described by the following expression:
M t (q t )q t + C t (q t , q t )q t + r\ t (q t )
+ K t q t +D t q t =T t
where the Mt(q t ),Ct(q t ,qt) e R (ntxnt) are the inertia matrix and the Coriolis matrix of the tree
structure respectively. These matrices satisfy the following structural properties:
1. M t (q t ) is symmetric and positive definite matrix,
2. M t (qt )  2C t (q t , qt ) is a skrewsymmetric matrix.
i)(q t )eR (nt ^ is the vector of the gravity force reflected in the joints' space. K t e R^ ntxnt ^ and
D t e R (ntxnt ) represent the diagonal matrices of the lumped elasticities and lumped
dampings in the joints 7 space. By using the matrix W from (18) the equations of the
dynamics of the tree structure (19) can be transformed into the equations of the closedlink
mechanism. Then, they are expressed only in dependence on the coordinates of the active
joints q a and the elastic DOF q e :
M c (q t )q ae + C c (q t , q t )q, e + q c (q t )
+ K c q ae + D c q ae = x c
where:
M c =W T M t W eR (naexnae } , (21)
C c = W T M t W + W T C t W e R( n — ) , (22)
r c = W T iit eR (naexl) , (23)
K c = W T K t W e R {naexnae \ (24)
D c =W T D t W £R (naexnae } . (25)
From these considerations, two methods for the computation of the inverse dynamics of the
parallel manipulator result. In the first method, the real and virtual forces and torques of the
tree structure (11) are computed. These torques are then transformed with (17) or (18) into
the drive torques of the closedlink structure. In the second method, the equations of the
dynamics of the tree structure (19) are transformed into the compact equations of the closed
link mechanism (20) and parameterised (21)(25) by the nonredundant coordinates q ae .
With these the drive torques can then be calculated.
268 Automation and Robotics
3.2 Direct dynamics
In this method the equations of the direct dynamics are obtained from the compact
equations (20) of the manipulator's inverse dynamics:
q ae = M c (q t ) _1 (x c  C c (q t , q t )q ae
 ilc (q t )  K c q ae  D c q ae )
According to this, the complex equations of the direct dynamics, parameterized by the
coordinates of the active joints and elastic DOF q ae are obtained. The redundant coordinates
of the passive joints, which are necessary for the computation of the matrices, result from
the closed kinematic loop constraints of the parallel manipulator (7) as well as their first (12)
and second derivatives.
3.3 Features of the LagrangeD'Alembert formulation
In this method, for the modelling of the elastic parallel manipulators' dynamics one can use,
without modifications, the well known methods and techniques from serial robotics (Khalil
& Gautier, 2000, Piedboeuf, 2001, Robinett et al., 2002). The computations of the inverse
dynamics can be carried out in parallel, and therefore can be faster, which is an advantage
for the real time calculation of the manipulator's model. The method of the direct dynamics
produces the compact equations of the elastic parallel manipulator. The disadvantage is that
the computations cannot be executed in parallel. If more parameters are to be considered for
the modelling, e.g. FiniteElementMethod (Beres & Sasiadek, 1995, Wang & Mills, 2004), the
compact matrices of the system can reach such dimensions, that their calculation is simply
not possible in real time.
4. New method for derivation of the Jacobian matrix of the parallel
manipulator
In the conventional methods the Jacobian of the parallel manipulator will be derived from
the velocity vectorloop method (Tsai, 1999) or from the analysis of the parallel
manipulator's statics (Kock, 2001, Merlet, 2000). The LagrangeD'Alembert Method
(Nakamura, 1991, Nakamura & Ghodoussi, 1989, Park et al, 1999, Yiu et al, 2001) makes it
possible to systematically convert between the single models of serial kinematic chains to
the model of the compact parallel manipulator. In this method, however, it was not shown
how the Jacobian matrices of the serial kinematic chains of the tree structure Ji can be
transformed into the Jacobian of the parallel manipulator G. An algorithm was developed
because of that, in order to perform this transformation. For this purpose, the W matrix,
representing the parameterisation of the configuration space from (18) and the static matrix
S of the parallel manipulator are used. The static matrix S describes the relationship
between the forces in the arms of the parallel manipulators f B e R^ nax1 ^ and the force on its
endeffector fxyz. The external force fxyz acting on the endeffector is distributed into the
corresponding branches, shown in the Fig. 1.
These forces in the branches can be calculated through the following relationship:
fn = [si ... s na f 1 fxYz=S 1 fxYz. (27)
Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators
269
Fig. 1. Force distribution on the manipulator
If the matrix S is not square then S _1 is pseudoinverse S + . The elements of the SMatrix
si(q a i, q P i, q e i) comprise the vector that relates fei, the force of the i th chain, and fxYZi, the
Cartesian force, which is a result of this force. It can be described in the following formula:
IXYZi — SilBi .
In the matrix form with the matrix U takes this relation the form:
(28)
f B = Uf B .
(29)
... S„
Now we introduce the Jacobian matrix J t of the tree structure:
h
h 
o ... u
(30)
where Ji(q a i, q P i, q e i) are the n a  Jacobian matrices of the serial kinematic chains. In order to
eliminate the dependencies of the coordinates of the passive joint q p for the calculation of
the G Jacobian matrix of parallel manipulator, the matrix J t will be parameterised with the
matrix W. After this parameterisation the new matrix no longer represents the mapping
between the joint and Cartesian velocity and force space of the parallel manipulator. In
order to obtain this mapping, the matrices S and U have to be introduced. The matrix S _1
represents the transformation between the forces from the Cartesian space into the branch
forces. The matrix U constitutes the relation between the forces in the branches and these
Cartesian components. With regards to this transformations, the Jacobian matrix of the
parallel manipulator can be derived from the following relation:
G T = W T J t T US  1 .
(31)
This pseudoinverse Jacobian matrix G +T represents the mapping between the Cartesian
force fxYz on the endeffector of parallel manipulator and the forces/ torques x ae e R (naeXl) in
the manipulator's structure in the joint space:
= G +T f x
(32)
270 Automation and Robotics
The presented method has the great advantage that the derivation of the serial Jacobian
matrices is much easier than the derivation of the compact Jacobian matrix.
5. A new method for the calculation of the direct dynamics of elastic parallel
manipulators
In this section, the formation of a system as a tree structure for the simultaneous calculation
of the direct dynamics of the elastic parallel manipulator  SCDD is suggested. It is the same
idea as the one used for the inverse dynamics of the LagrangeD'Alembert formulation.
However, in this system the closed kinematic loop constraints of the elastic parallel structure
are represented by forces and torques, just like in the case of the Lagrangian equations of the
first type. These forces and torques are distributed in the tree structure such that they cause
motion and internal forces which match the motion and mechanical stress in the structure of
the original parallel manipulator.
5.1 Simultaneous Calculation of the Direct Dynamics (SCDD)
The equations of the tree structure have the known form shown in (19). These equations will
now be factored into the equations of motion of the individual serial kinematic chains:
M ti (q ti )q ti + C ti (q ti , q ti )q ti + r ti (q ti )
+ JtiixYzi + Ktiqti + Dtiqti = Tti
for i=l ... n a , where i designates one kinematic chain with the associated variables q t i = [q a i
q P i q e i] and torques x t i = [x a i x P i x e i] of the active x a i and passive x P i joints and additionally
structure torques x e i. fxYZi represents an external force acting on the end of the i th branches of
the tree structure. The equations of the direct dynamics of each such chain can then be
formulated:
q ti = M ti (q ti ) _1 (T ti  C ti (q ti , q ti )q ti
 r t i (q t i )  K ti q t i  D ti q t i  jJfxYZi )
for i=l ... n a . Thus, the direct dynamics of each serial kinematic chain can be calculated. The
input for each of these equations are the external forces acting on the end of the particular
serial kinematic chain f xyzi and the input torques x a i and x P i. The torques of the elastic DOF
Xei result from the material properties like stiffness and damping. Additionally, they can be
also produced by attached adaptronic actuators. They are independent. The input of the
treestructure (19) and of the compact parallel manipulator (20) is the torque vector x c . The
virtual work of both systems is equal (10). The torques of the treestructure are
interdependent and result from the input torque vector. They represent the constraint
torques/ forces of the structure and the drive torques that induce the movement of the
manipulator. The relation between these torques and the input torque vector is established
in (17). However, before these torques can be calculated, one must first calculate the position
(7), velocity (12) and after the differentiation of velocity, the acceleration of the redundant
passive joints as a function of the active joints and the elastic DOF (Beyer, 1928, Stachera,
2005). This is done with the use of the closed kinematic loop constraints (8). Then from the
Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators 271
equations of the reduced system (33) the partial matrices and vectors are taken, which are
associated with the virtual torques of the passive joints:
x pj = M pj (q ti )q ti + C pj (q ti , q ti )q ti
+ ilpilqti J+ JpjfxYzi + D pj q ti
for j=l ... n p , i=l...n a , where the j th passive joint belongs to the i th kinematic chains. Finally,
the torques x a that arise from the computed virtual torques x p = [xi . . . x np ] and from the drive
torques x c of the original parallel structure can be calculated. For that, the Jacobian matrix
(12) is used, which was already derived for the inverse dynamics (17) and (18). This matrix
exists already in a symbolic form, which reduces the amount of work:
T c 
dq P
dql
(36)
Only the virtual torques (35) of the passive joints from all of the torques and forces in the
robot's structure are used for the calculation of the torques x a of active joints. The influence
of the torques and forces x e of the elastic DOF on the manipulator's movement is reflected in
the coordinates of the elastic DOF and they were already used for the calculation of the
virtual torques x p . These torques of the passive x p and active x a joints cause movement in the
tree structure, that correspond to the movement of the original parallel manipulator,
according to the D'Alembert principle of virtual work. In the compact equations of direct
dynamics, the compact torques affect the active joints (20). These torques are accounted for
by the torque and force distributions in the closedlink mechanism. For this reason, the
compact torques should be applied to the active joints of the reduced tree structure in order
to ensure the same operation conditions. Namely:
(37)
T p =0.
In order to fulfill this condition, the new forces of the closedloop constraints acting on the
end of each i th branch, must be calculated, and together with the drive torques supplied to
the partial equations of direct dynamics (34). The difference between the acting torques of
the compact manipulator and the acting torques of the tree structure amounts to:
AX a = T c  T a
The new constraints forces can be calculated:
dq p
dql
(38)
fxYZi=Jti T [Ax ai x pi ], (39)
for i=l ... n a . Distribution of this force on the manipulator's structure imply the condition
(37). Now the external forces acting on the endeffector of the manipulator have to be
distributed between all the separate serial kinematic chains. The relation of static (27) and
(29) will be used:
fBXYZ = US^fxYZ , (40)
272 Automation and Robotics
where fBXYz=[fxYzi ... fxYZi ... fxYZna] 1 . These forces (40) and the forces resulting from the
constraints (39) form the common force acting on each serial kinematic chain. The final
formulation for the forces takes the form:
IXYZi — IXYZi + IXYZi , V*l)
for i=l ... n a . The movement of the tree structure and the movement of the original parallel
manipulator as well as the force and torques distribution in the structure are equal.
This algorithm can be summarized in the folio wings steps:
1. Transformation of the system in a reduced system and calculation of the direct dynamics
for each serial kinematic chain separately  simultaneous (34). In order to compute
these equations (in a calculation loop), the torques and forces resulting from the
constraints and from the actuation have to be calculated first.
2. Calculation of the trajectory of the passive joints based on the nonredundant DOF
(coordinates of the actuated joints and elastic DOF) and the constraints of the closed
kinematic loops of the parallel structure.
3. Calculation of the virtual torques of the passive joints using the partial equations of the
inverse dynamics of serial kinematic chains (35) and the difference between the torques
of the actuated joints of the reduced system and the original manipulator (38).
4. Calculation of the forces of constraints for each serial kinematic chain from the virtual
torques of the passive joints and the torque differences (39).
5. Fusion of the forces of constraints with the external forces acting on the end of each
kinematic chain (41). Setting of the torques and forces of the reduced system (34) to
those of the original parallel manipulator (37).
5.2 Features of the new method
In the Method  Simultaneous Calculation of the Direct Dynamics, SCDD  the system is
segmented into a tree structure, as in the case of the inverse dynamics of Lagrange
D'Alembert formulation. This is done in order to accelerate the inversion of the inertia
matrix. The most frequently used method, the LUGaussian elimination, has the complexity
0(n 3 ). For the symmetrical manipulator's structure with only the rotational joints the
complexity can be written as 0((n a +n a n e k) 3 ), where n e k means the number of the elastic DOF
in particular kinematic chain. In comparison, the complexity for the new distributed
calculation performed for the same type of robots amounts to 0(n a (l+n p k+n e k) 3 ), where n p k
represents the number of the passive joints in one kinematic chain. For complex systems the
relation n p k«n e k is valid. The avoidance of the multiplication between n a and n e k under the
power of three reduces the computational effort. Therefore, the computation speed of the
direct dynamics in joint space of large scale systems can be significantly accelerated by using
several small matrices instead of one complex matrix. Additionally, the computations of the
direct dynamics with this decomposition can be performed in parallel. In the Table 1 the
complexity of the matrix inversion, number of the necessary arithmetical operations, for
three different robots from the Collaborative Research Center 562 is shown (Hesselbach et al.,
2005). These calculations were done, with the assumption that in each kinematic chain one
elastic DOF n e k exists.
These results show considerable reduction of the calculation complexity by using the
proposed algorithm, even with only one additional elastic DOF in each kinematic chain.
Therefore each kinematic chain can be modelled with more parameters, what is a common
procedure for elastic manipulators.
Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators
273
n a
n pk
n e k
SCDD
LD'A
Reduction
FiveBar
2
1
1
54
64
16%
Hexa
6
2
1
384
1728
78%
Triglide
3
2
1
162
729
78%
Table 1. Complexity of the matrix inversion
Also the calculation of the direct dynamics of rigid body parallel manipulators can benefit
from this new method. The reduced form of the dynamics 7 equations can decrease the
number of arithmetic operations needed for the calculation of the model. This problem was
investigated on the base of rigid parallel manipulator FiveBar (Stachera, 2006b). The model
derived with this new method was compared with a model gained with the standard
LagrangeD'Alembert Formulation. Since it is a comparison study the exact form of the
manipulator's model is here not important. The symbolic equations were derived and
simplified with the use of Mathematica®. All the operations and transformations that are
necessary for the computations of the direct dynamics have been considered.
Operation Type
Number of the operations
Reduction
SCDD
LD'A
+
192
670
71 %

80
302
74%
*
432
2482
83%
/
38
36
6%
Table 2. Complexity of the arithmetic operations
The results presented in the Table 2 show a considerable reduction of the computational
effort for each kind of operation excepting division (increasing about 6 %). A digital
processor needs many machine steps for the multiplication, therefore the reduction of this
operation's number is essential for the general reduction of the computational power for a
model computation. In this case a reduction of 84 % was achieved. This confirms the
applicability of this procedure for the effective reduction of computing power even for a
rigid parallel manipulators.
5.3 Verification
The new SCDD method was compared with the LD'A method in simulation. A model of
elastic planar parallel manipulators FiveBar was created. A lumped elasticity cl = cr =
5.464 10 6 N/m was considered in the upper arms of the manipulator, shown in Fig. 2. Ml and
Mr represent the motors. The other parameters of this model are not relevant, since it is a
comparison study. A straight line trajectory between two points p A and p E was chosen. The
models were then controlled by torques, which were created by a rigid body model without
control. The black line represents the reference trajectory. The dark gray line is a result of the
LD'A model and the light gray line from the SCDD model. It can be seen, that the models
both follow the trajectory with comparable accuracy.
For better comparison of these models, the same trajectories are expressed now with the
help of the forces induced in the branches, Fl in the left branch and Fr in the right one, of the
parallel manipulator, shown in Fig.3. A small difference between these forces can be noted.
At the beginning of the simulation the differences are equal to zero, but with the time they
274
Automation and Robotics
change. Apart from the difference between these forces, a good agreement in the vibrations'
behaviour of both systems, frequency, amplitude and phase, can be observed, which
confirms the new proposed method.
0.8
0.6
0.4
0.2
. v E <*^
T^^v'"
rfjr ■ c *\ ■ \ ■
1 f
\ : 1
\MlJ ' '.'(Mr/ 1 1
0.4 0.2 0.2 0.4 0.6 0.8
x in m
Fig. 2. Trajectory and workspace of elastic planar parallel manipulator FiveBar
0.25
Fig. 3. Force in the active rods of the parallel manipulator  comparison
8
6
S 4
x10
0.05 0.1 0.15 0.2
t in s
0.25
Fig. 4. Distance between two kinematic chains of FiveBar  numerical error of SCDD
The existing differences between the paths traveled by these two elastic models and the
induced forces can be accounted for by the numerical precision. Fig. 4 shows the distance
Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators 275
between the end points of both kinematic chains. This numerical precision causes the
increase in time of the distance between two kinematic chains, that should have been equal
to zero. The dark gray line As = 1 10 14 m shows the LD'A and the light gray the SCDD
model. The error is dependent on the sample interval of the simulation: the smaller the
interval, the smaller the error. In the field of numerical methods algorithms are known that
deal with the stabilization of the numerical calculation and increasing of the computation
accuracy (Baumgarte, 1972), which will be the next step in the investigation of this new
algorithm. Despite this numerical error, the analytical approach is confirmed by these
presented results.
6. Conclusion
In this chapter, the Lagrange equation of the first type and LagrangeD'Alembert
Formulation were introduced around the consideration of elastic modes. To complete the
standard method of LagrangeD'Alembert, an algorithm for the derivation of the Jacobian
matrix of the parallel manipulator based on the Jacobian matrices of the individual serial
kinematic chains was presented. Originating from this knowledge, a new method was
presented for the simultaneous calculation of the direct dynamics of the parallel and
furthermore the elastic parallel manipulators. The new method shows a significant
reduction of the complexity of the calculation, even for the rigid body manipulators. For the
sophisticated systems this feature is a great advantage. The disadvantage of the presented
method is the numerical stability over long periods of time, which will therefore be the topic
of future researches.
7. References
Baumgarte, J. (1972). Stabilization of constraints and integrals of motion in dynamical
systems. Computer Methods in Applied Mechanics, Vol.1, pp. 136
Beres, W. & Sasiadek, J. Z. (1995). Finite element dynamic model of multilink flexible
manipulators. Applied Mathematics and Computer Science, Vol. 5, No. 2, pp. 231  262,
Technical University Press Zielona Gora, Poland
Beyer, R. (1928). Dynamik der mehrkurbelgetriebe. In: Zeitschrift fuer angewandte Mathematik
undMechanik, Vol.8, No. 2, pp. 122 133
Featherstone, R. & Orin, D. (2000). Robot dynamics: equations and algorithms. Proceedings of
the IEEE International Conference on Robotics and Automation, pp. 826  834, San
Francisco, USA
Hesselbach, J.; Bier, C; Budde, G; Last, P.; Maass, J. & Bruhn, M. (2005). Parallel robot
specific control functionalities. In: Robotic Systems for Handling and Assembly, 2nd
International Colloquium of the Collaborative Research Center 562, Last, P., Budde, C,
and Wahl, F. M., (Ed.), pp. 93  108. Fortschritte in der Robotik Band 9, Shaker
Verlag, Braunschweig, Germany
Kang, B. & Mills, J. K. (2002). Dynamic modeling of structurallyflexible planar parallel
manipulator. Robotica, Vol. 20, pp. 329339
Khalil, W. & Gautier, M. (2000). Modelling of mechanical system with lumped elasticity.
Proceedings of the IEEE International Conference on Robotics and Automation,^. 3965 
3970, San Francisco, USA
Kock, S. (2001). Parallelroboter mit Antriebredundanz. PhD thesis, Fortschritt  Berichte VDI,
Duesseldorf  Braunschweig, Germany
Merlet, J.P. (2000). Parellel Robots. Kluwer Academics Publishers, Netherlands.
276 Automation and Robotics
Miller, K. & Clavel, R. (1992). The lagrangebased model of delta4 robot dynamics.
Robotersysteme, Springer Verlag, Vol. 8, pp. 4954., Germany
Murray, R. M.; Li, Z. & Sastry, S. S. (1994). A mathematical introduction to robotic
manipulation. CRC Press LLC, USA
Nakamura, Y. (1991). Advanced robotics: redundancy and optimization. AddisonWesley
Publishing Company, USA
Nakamura, Y. & Ghodoussi, M. (1989). Dynamics computation of closedlink robot
mechanisms with nonredundant and redundant actuators. IEEE Transactions on
Robotics and Automation, Vol. 5, No. 3, pp. 294302
Park, F. C.; Choi, J. & Ploen, S. R. (1999). Symbolic formulation of closed chain dynamics in
independent coordinates. Pergamon: Mechanism and Machine Theory, Vol. 34, pp. 731
751
Piedboeuf, J.C. (2001). Six methods to model a flexible beam rotating in the vertical plane.
Proceedings of the IEEE International Conference on Robotics and Automation, pp. 2832 
2839,Seul, Korea
Robinett, R. D.; Dohrmann, G; Eisler, G. R.; Feddema, J.; Parker, G. G.; Wilson, D. G. &
Stokes, D. (2002). Flexible robot dynamics and controls. Kluwer Academic/Plenum
Publishers: International Federation for System Research  IFSR, New York, USA
Spong, M. W. & Vidyasagar, M. (1989). Robot dynamics and control. John Wiley and Sons,
Inc., USA
Stachera, K. (2005). An approach to direct kinematics of a planar parallel elastic manipulator
and analysis for the proper definition of its workspace. Proceedings of the 11 th IEEE
Conference on MMAR, Miedzyzdroje, Poland
Stachera, K. (2006a). A new method for the direct dynamics' calculation of parallel
manipulators. Proceedings of the 6 th IEEE World Congress on Intelligent Control and
Automation, Dalian, China
Stachera, K. (2006b). An approach for the simultaneous calculation of the direct dynamics of
parallel manipulators. Proceedings of the 12 th IEEE Conference on MMAR,
Miedzyzdroje, Poland
Stachera, K. & Schumacher, W. (2007). Simultaneous calculation of the direct dynamics of
the elastic parallel manipulators. Proceedings of the 13 th IEEE IFAC International
Conference on Methods and Models in Automation and Robotics (MMAR), Szczecin,
Poland
Tsai, L.W. (1999). Robot analysis: the mechanics of serial and parallel manipulators. John
Wiley and Sons, Inc., USA
Wang, J. & Gosselin, G (2000). Parallel computational algorithms for the simulation of
closedloop robotic systems. Proceedings of the International Conference on Parallel
Computing Applications in Electrical Engineering (PARELEC2000), IEEE Computer
Society, pp. 34  38, Washington, DC, USA
Wang, J.; Gosselin, C. M. & Cheng, L. (2002). Modeling and simulation of robotic systems
with closed kinematic chains using the virtual spring approach. Kluwer Academic
Publishers, Springer Netherlands, Multibody System Dynamics, Vol. 7, No. 2, pp. 145
 170
Wang, X. & Mills, J. K. (2004). A fern model for active vibration control of flexible linkages.
Proceedings of the IEEE International Conference on Robotics and Automation (ICRA),
pp. 43084313, New Orleans, USA
Yiu, Y. K.; Cheng, H.; Xiong, Z. H.; Liu, G. F. & Li, Z. X. (2001). On the dynamics of parallel
manipulators. Proceedings of the IEEE International Conference on Robotics and
Automation (ICRA), pp. 3766  3771, Seul, Korea
16
Orthonormal Basis and Radial Basis Functions
in Modeling and Identification of Nonlinear
BlockOriented Systems
Rafal Stanislawski and Krzysztof J. Latawiec
Department of Electrical, Control and Computer Engineering
Opole University of Technology
Poland
1. Introduction
Nonlinear blockoriented systems, including the Hammerstein, Wiener and feedback
nonlinear systems have attracted considerable research interest both from the industrial and
academic environments (Bai, 1998), (Greblicki, 1989), (Latawiec, 2004), (Latawiec et aL,
2003), (Latawiec et aL, 2004), (Pearson & Pottman, 2000).
It is well known that orthonormal basis functions (OBF) (Bokor et aL, 1999) have proved to
be useful in identification and control of dynamical systems, including nonlinear block
oriented systems (Gomez & Baeyens, 2004), (Latawiec, 2004), (Latawiec et aL, 2003),
(Latawiec et aL, 2006), (Latawiec et aL, 2004), (Stanislawski et aL, 2006). In particular, an
inverse OBF (IOBF) modeling approach has been effective in identification of a linear
dynamic part of the feedbacknonlinear and Hammerstein systems (Latawiec, 2004),
(Latawiec et aL, 2004). On the other hand, regular OBF (ROBF) modeling approach has
proved to be useful in identification of the Wiener system. The approaches provide the
separability in estimation of linear and nonlinear submodels (Latawiec et aL, 2004), thus
eliminating the bilinearity issue detrimentally affecting e.g. the ARXbased modeling
schemes (Latawiec, 2004), (Latawiec et aL, 2003), (Latawiec et aL, 2006), (Latawiec et aL,
2004). The IOBF modeling approach is continued to be efficiently used here to model a
linear dynamic part of the feedbacknonlinear and Hammerstein systems and regular OBF
modeling approach is used to model a linear part of the Wiener system.
The problem of modeling of a nonlinear static part of the nonlinear blockoriented system
can be classically tackled using e.g. the polynomial expansion (Latawiec, 2004), (Latawiec et
aL, 2004) or (cubic) spline functions. Recently, a radial basis function network (RBFN) has
been used to model a nonlinear static part of the Hammerstein and feedbacknonlinear
systems and a very good identification performance has been obtained (Hachino et aL,
2004), (Stanislawski, 2007), (Stanislawski et aL, 2007). The concept is extended here to cover
the Wiener system.
This paper presents a new strategy for nonlinear blockoriented system identification, which
is a combination of OBF modeling for a linear dynamic part and RBFN modeling for a
nonlinear static element. The effective OBF approach is finally coupled with the RBFN
modeling concept, giving rise to the introduction of a powerful method for identification of
the nonlinear blockoriented system.
278 Automation and Robotics
2. Regular and inverse OBF modelling concept
2.1 Regular OBF modeling
It is well known that an openloop stable linear discretetime system described by the
transfer function G(q) can be represented with an arbitrary accuracy by the model
G(q) = ^ i=1 c i L i (q) , including a series of orthonormal transfer functions U(q) and the
weighting parameters a, z=1,...,M, characterizing the model dynamics. Thus, the model of
the system can be written as (Latawiec, 2004), (Latawiec et al., 2006), (Latawiec et al., 2004)
M
y(0 = Ec,i,fo)«(f) (i)
z=l
Various OBF can be used in (1). Two commonly used sets of OBF are simple Laguerre and
Kautz functions. These functions are characterized by the 'dominant 7 dynamics of a system,
which is given by a single real pole (p) or a pair of complex ones (p, p*), respectively.
In case of discrete Laguerre models to be exploited hereinafter, the orthonormal functions
1pq
i=l,...,M (2)
consist of a firstorder lowpass factor and (zl)thorder allpass filters. Dominant Laguerre
pole p can be selected in an experimental way or can be determined with the aid of the
stochastic gradient (SG) estimator (Boukis et al., 2006), (Oliveira, 2000).
2.1 Inverse OBF modeling
In case of use of the inverse OBF (IOBF) concept to model a linear dynamic part, the model
equation can be presented in form
G\q)y(t) = u(t) (3a)
R(q)y(t) = u(t) (3b)
where FIR model R(q)= r Q q d + r a q d ~ x + ... + r d + r d+1 q' 1 ... + r L _ a q~ L+d+1 is the inverse of the system
model G(Cjj) . In the IOBF concept, the inverse R(q) of the system is modeled using OBF. An
OBF modeling approach can now be applied to equation (3b) instead of (3a) and finally we
can present equation (1) in the following form (Latawiec et al., 2003)
M
y{t)+ £ Ci L, (q, p)y (t) = p u(t  d) + e, (t ) (4)
i=l
where e\(t) is the equation error, d is the time delay of the system, /% and q z=l,...,M are the
OBF model parameters.
3. RBF network
The nonlinear function approximated by a Radial Basis Functions Network (RBFN) consists
of two layers of neurons (one hidden and one output layer). The hidden layer consists of m
Orthonormal Basis and Radial Basis Functions in Modeling and Identification
of Nonlinear BlockOriented Systems 279
neurons, where each neuron implements the radial activated function. The output layer
consists of one linear neuron which realizes weighted sum of outputs of hidden layer
neurons. The output of RBFN is described by the equation
m
x{t)=Y j wMu{t)) (5)
i=l l
where wi, i=l,...,m are the weighting coefficients and $(u(t)) are the outputs of hidden layer
neurons. Typically, the Gaussian function is used as an activation function in RBFN. The
Gaussian functions are modeled by two parameters characterizing their centers at and wides
a?. In this case the <fii(u(t)) is given by the equation
$(w(£)) = exp(w(fc)a f  /erf J for i=l,..,m (6)
where   .   is the Euclidian norm.
Important advantage of the RBF network is that the weighting coefficients W{, i=l,...,m can
by estimated by using classical, linear estimation schemes e.g. recursive/ adaptive least
squares (RLS/ALS), or least mean squares (LMS). The centers at and wides gi (i=l,...,m) of
the RBF can be determined with the aid of the stochastic gradient (SG) estimator (Kim et al.,
2006), genetic algorithm (Hachino et al., 2004) or other optimization methods. However, in
practical applications, the optimization of the a\ and o? is not absolutely necessary. It has
been found in simulations (Stanislawski, 2007) that RBFN without optimization (with
regular distribution of the centers and constant widths) can produce satisfactory solutions.
3. Nonlinear blockoriented systems
3.1 Hammerstein system
The Hammerstein system consists of two cascaded elements, where the first one is a
nonlinear memoryless gain and the second one is a linear dynamic model. The whole
Hammerstein system can be described by the equation
y(t) = G(q)[f(u(t)) + e H (t)] = G{q)[x(t) + e H (t)] (7)
where G(q) models a dynamic linear part, /(.) describes a nonlinear function, x(t) is the
unmeasured output of the nonlinear part and eu{t) is the error/ disturbance term. An
alternative output error/ disturbance formulation is also possible.
Combining equations (4), (5) and (7) we arrive at the equation describing the whole
Hammerstein system
M m
z=l l
Assuming that Wj=fi)Wj, i=l...m, the model output from the Hammerstein system can be
finally given as
M m
Kt) = X C A (i,p)y(t) +£«^0  d) (9)
which can be presented in the linear regression form
280 Automation and Robotics
y(t) = <p T (t)0 (10)
where <p T (t) =[2?i(t) ... vmHJ) fa(td) <fe(td)... <fim(td)], =[c\ ... cm w\ W2 ... w m ] and
Vi(t)=Li(q,p)y(t). Unknown parameters of the model can be estimated by the familiar
recursive least squares (RLS) or least mean squares (LMS) algorithms.
3.2 Wiener system
In a singleinput singleoutput Wiener system, a linear dynamic part is cascaded with a
nonlinear static element. The output y(t) of the Wiener model, or the system output
predictor, can be calculated as
y(t)=f[G(q)u(t)] (11)
Since a nonlinear static characteristic is invertible we can rewrite equation (11) in form
r\ym = G(q)u(t) (12)
The function / _1 [j)(0] can De approximated with RBF network. Finally, we arrive at the
linear regression function
M m
y(t) = ZciU (q 1 )u(t) ~2> f <j> { (y(t)) (13)
z=l i=l
where w. =w i a. (z=l,..,m), which can be presented in the familiar form y(t) = (p T (t)0 ,
with <p T (t) = [ t?i (t) ... i?m(0 fa(y(t)) <k(y(t))... <frm{y(t))\* 0=[c\ ... c M m ™2  w w ] and
Vi(t)=Li(q,p)u(t), i=l,...,M
3.3 Feedbacknonlinear system
In the blockoriented feedbacknonlinear system, the output of the linear dynamic part is fed
(negatively) back to the input through the static nonlinearity, so that the whole system can
be described by the equation
y(t) = G(q)[u(t)f(y(t)) + e t (t)]
= G(q)[u(t)x(t) + e F (t)] ( '
where e^{t) is the error/ disturbance term. Combining equations (4), (5) and (14) we arrive at
the equation describing the whole, IOBFrelated feedbacknonlinear system (Stanislawski et
al.,2007)
M
y(t)+Zc,M<?,p)y(0=A
u(td) ^ w ■
;=1 J
^(y(td))
+ e(t) (15)
Putting Wj=fi)Wj, j=l...m, the output from the feedbacknonlinear system can be finally given
as
Orthonormal Basis and Radial Basis Functions in Modeling and Identification
of Nonlinear BlockOriented Systems
281
m m
ii j=l
(16)
The equation (16) can be presented in the linear regression form, with cp 1 (t) =[u(td) ^i(t) ...
v M (t) ~<fa(y(td)) 0z(y(td))... 0m(y(td))], 0=[fio c\ ... c M w_\ m. ... w m ] and Vi(t)=Li(q,p)y(t).
Clearly, owing to the IOBF modeling approach applied, the linear and nonlinear submodels
are separated from each other so that the bilinearity issue is eliminated here.
4. Simlation experiments
In the Matlab/Simulink environment, we comparatively analyze the three presented
nonlinear blockoriented OBF/RBFNrelated models consisting of 1) Hammerstein IOBF
related model, 2) Wiener regular OBF related model and 3) feedbacknonlinear IOBF related
model. For example, consider the magnetic levitation process which has been simulated as a
demo in the Matlab/Simulink environment. Our main goal is to analyze efficiency of the
approach in view of their possible use in online identification (and control). Performance of
parameter estimation is evaluated by means of the mean square prediction error (MSPE).
MSPE is described by the equation
MSP£ = (i/N)2(y(f)y(0) 2
(17)
The system is excited by a random number generator with regular distribution <0.5, 4>.
Additionally, the system is corrupted with the input and output noises (ei(t) and e (t)), which
are supplied from a Gaussian random number generators with N(0, 8,) and N(0, 8 ),
respectively. For estimation of weights of the RBFs and parameters of the dynamical model
we use a classical RLS algorithm.
Table 1 specifies the results of a comparative analysis of the performance of the three models
for M=6 and m=9.
5i
5o
Hammerstein
system
Wiener system
Feedbacknonlinear
system
8.851 e6
0.2437
1.008 e5
0.005
2.167 e5
1.123
9.236 e5
0.01
4.337 e5
1.287
9.582 e5
0.005
2.752
2.231
2.838
0.01
5.188
3.226
4.95
0.005
0.005
2.921
3.406
2.792
Table 1. MSPE of the Hammerstein, Wiener and feedbacknonlinear models
282
Automation and Robotics
The results in Table 1 show that the high accuracy of identification has been obtained for the
IOBF/RBFNbased models (Hammerstein and feedbacknonlinear models). The reasons are
1) the specific, structure of the IOBFrelated model, 2) numerical conditioning of the
covariance matrix for the IOBFbased estimation problem is essentially better than that for
the OBFbased one. However, the inconvenience of IOBFrelated models is the high
sensitivity on the output error due to the equation error structure. Table 1 shows that the
Wiener model cannot provide sufficiently high accuracy of the identification problem,
causing that the RBF network in the Wiener system models the inversion of the nonlinear
function /(.). The calculation of the original function on the basis of RBF network is
ambiguous and badly numerical conditioned. Finally, only the Wiener model gives the
satisfy results for the system corrupted with the highlevel disturbances.
Plots of the actual output and its reconstruction by Hammerstein, Wiener and Feedback
nonlinear models presented in Fig. 1 and Fig. 2 confirm very good performance of
identification for Hammerstein and Feedback nonlinear models and poor performance for
Wiener model, respectively.
15 20 25 30 35 40 45 50 55 60 65
t[s]
Fig. 1. Plots of actual (solidblack) vs. predicted (dashedred) outputs of the Hammerstein
system (left) and feedbacknonlinear system (right)
Fig. 2. Plots of actual (solidblack) vs. predicted (dashedred) outputs of the Wiener system
Orthonormal Basis and Radial Basis Functions in Modeling and Identification
of Nonlinear BlockOriented Systems 283
7. Conclusion
The paper has presented the solutions to the nonlinear identification problem for the various
nonlinear blockoriented systems using OBFrelated models and RBF network. We have
demonstrated that the Wiener model based on regular OBF modeling concept cannot
provide sufficiently high performance of the identification problem. This is mainly to due
with inversion problem of RBF network.
Results of a simulation analysis have shown that the strategy using the IOBF modeling
concept in Hammerstein and feedbacknonlinear model can provide a very good
performance, both in terms of low prediction errors and accurate reconstruction of the
nonlinear characteristics, in addition to high computational efficiency.
8. References
Bai E.W. (1998). An optimal twostage identification algorithm for Hammerstein Wiener
nonlinear systems. Automatica, Vol. 34, pp. 333338.
Bokor J., Heuberger P., Ninness, B., Oliveira e Silva, T., Van den Hof P. & Wahlberg, B.
(1999). Modelling and identification with orthogonal basis functions. Proc.
Preconference Workshop, 14 th IP AC World Congress, Beijing, P.R. China.
Boukis C, Mandic D.P., Constantinides A.G. & Polymenakos L.C. (2006). A Novel
Algorithm for the Adaptation of the Pole of Laguerre Filters. IEEE Signal Processing
Letters, Vol. 13, No. 7, pp. 429  432.
Greblicki W. (1989). Nonparametric orthogonal series identification of Hammerstein
systems. International Journal of Systems Science, Vol. 20, No. 12, pp. 23552367.
Gomez J.C. & Baeyens E. (2004). Identification of blockoriented nonlinear systems using
orthonormal bases. Journal of Process Control, Vol. 14, No. 6, pp. 685697
Hachino T., Deguchi K. & Takata H. (2004). Identification of Hammerstein model using
radial basis function networks and genetic algorithm. Proc. 5th Asian Control
Conference, Vol. 1, pp. 124129.
Kim N.Y., Byun H.G. & Kwon K.H. (2006). Learning Behaviors of Stochastic Gradient Radial
Basis Function Network Algorithms for Odor Sensing Systems. ETRI journal, Vol.
28,No.l.
Latawiec K.J. (2004) The Power of Inverse Systems in Modeling and Control of Linear and
Nonlinear Systems. Vol. 167, Opole University of Technology Press, Opole, Poland.
Latawiec K.J., Marciak C., Hunek W. & Stanislawski R. (2003) A new analytical design
methodology for adaptive control of nonlinear blockoriented systems. Proc. 7th
World MultiConference on Systemics, Cybernetics and Informatics, Vol. XI, pp. 215220,
Orlando, Florida, USA.
Latawiec K.J., Marciak C. & Oliveira G.H.C.: (2006). A new controloriented modeling
methodology for a series DC motor. Electromagnetic Fields in Mechatronics, Electrical
and Electronic Engineering, Wiak S., Krawczyk A. & Fernandez X.L.M. (Eds.), IOS
Press, Studies in Applied Electromagnetics and Mechanics, Vol. 27, Chapter_B_13.
Latawiec K.J., Marciak C., Rojek R. & Oliveira G.H.C. (2003). Linear parameter estimation
and predictive constrained control of Wiener/ Hammerstein systems. Proc. 13th
IFAC Symposium on System Identification, pp. 359364, Rotterdam, The Netherlands.
284 Automation and Robotics
Latawiec K.J., Marciak C, Stanislawski R. & Oliveira G.H.C. (2004) The mode separability
principle in modeling of linear and nonlinear blockoriented systems. Proc. the 10th
IEEE MMAR Conference (MMAR'04), Vol. 1, pp. 479484, Miedzyzdroje, Poland.
Oliveira S.T. (2000). Optimal pole conditions for Laguerre and twoparameter Kautz models:
a survey of known results. Proc. 12th IFAC Symp. on System Identification
(SYSID'2000), pp. 457462, Santa Barbara, CA, USA.
Pearson R.K. & Pottman M. (2000). Graybox identification of blockoriented nonlinear
models. Journal of Process Control, Vol. 10, pp. 301315.
Stanislawski R., Latawiec K.J. & Stanislawski W. (2006). Modeling of a boiler proper using a
complex structure model by means of multivariable orthonormal basis functions.
Proc. 12th IEEE MMAR Conference (MMAR'06), pp. 935938, Miedzyzdroje, Poland.
Stanislawski R. (2007). Hammerstein system identification by means of orthonormal basis
functions and radial basis functions. Emerging Technologies, Robotics and Control
Systems, Pennacchio S. (Eds.), Internationalsar, Vol. 2, pp. 6973, Palermo, Italy.
Stanislawski R., Latawiec K.J. & Hunek W.P. (2007). Identification of feedbacknonlinear
systems by means of orthonormal basis and radial basis functions. Proc. 13th IEEE
IFAC IC MMAR 2007, pp. 611616, August 2007, Szczecin, Poland.
17
Control System of Underwater Vehicle Based on
Artificial Intelligence Methods
Piotr Szymak and Jozef Malecki
Polish Naval Academy
Poland
1. Introduction
One of the main development directions of an underwater technology are robots, which are
working under the surface of a water. Using of these unmanned vehicles enables
exploration at bigger depths and in more hazardous conditions (Kubaty & Rowiriski, 2001).
Correctness of realization of different underwater works requires precise control of robot's
movement in underwater environment.
Fig. 1. Remotely operated vehicle called Ukwial
In the case of underwater robot is object of nonlinear dynamics and works in marine
environment with different disturbances robust nonlinear control method may be applied.
An example of this kind application is designed and verified automatic control system of
underwater vehicle called Ukwial (fig. 1).
Problem of underwater vehicle's control is considered by several scientific centers
(particularly in the United States  Florida Atlantic University, Massachusetts Institute of
Technology, Naval Postgraduate School in Monterey; in Japan  Osaka University, in
286 Automation and Robotics
Norway  University of Trondheim, in Poland  Szczecin University of Technology, Polish
Naval Academy in Gdynia). Direct results of researches are usually inaccessible for the sake
of their commercial or military application. While published results of researches are
concerned mainly on basic problems: control of course and control of draught.
This chapter contribute into domain of underwater vehicle's control results of numerical
and experimental researches of remotely operated vehicle Ukwial, which is used in Polish
Navy. Using of presented robust nonlinear control method helps operators of Ukwial in
their daily work.
In the chapter selected aspects of steering an underwater vehicle along desired trajectory
have been developed. The fuzzy data processing has been applied for compensation of the
nonlinear underwater vehicle's dynamics and influence of environmental disturbances. It
has enabled to calculate command signals driving the vehicle with set values of movement's
parameters. An architecture of the selected fuzzy logic controllers has been presented.
Moreover, the results of computer simulations and experimental research of remotely
operated vehicle Ukwial have been inserted.
2. Mathematical model of an underwater vehicle
Nonlinear model in six degrees of freedom has been accepted to simulate movement of the
underwater vehicle (Fossen, 1994). This movement has been analyzed in two coordinate
systems:
1. the bodyfixed coordinate system, which is movable,
2. the earthfixed coordinate system, which is immovable.
While for the aim of movement description, notation of physical quantities according to
SNAME (The Society of Naval Architects and Marine Engineers) has been accepted. Underwater
vehicle's movement is described with the aid of the six equations of motion, where the three
first equations represent the translational motion and the three last equation represent the
rotational motion. These six equations can be expressed in a compact form as:
Mv + C(v)v + D(v)v +g(/7) + U(v)v= r (1)
Here v=[u,v,w,p,q,r\ is the bodyfixed linear and angular velocity vector, ^=[x,y,z,^,^,^] is the
earthfixed coordinates of position and Euler angles vector and z=[X,Y,Z,K,M,N] T is the
vector of forces and moments of force influenced on underwater vehicle. M is a inertia
matrix, which is equal a rigidbody inertia matrix and added mass inertia matrix. C is a
Coriolis and centripetal matrix, which is a sum of rigidbody and added mass Coriolis and
centripetal matrixes. D is a hydrodynamic damping matrix and g is a restoring forces and
moments matrix. U is a damping matrix generated by a cable called an umbilical cord.
Underwater vehicle is supplied and can be controlled via the umbilical cord.
After making assumption that underwater vehicle has three planes of symmetry, it moves
with small speed in a viscous liquid and an origin of movable coordinate system covers with
vehicle's centre of gravity, specific form of matrixes with nonzero values of diagonal's
elements has been obtained (Fossen, 1994). According to earlier researches (Szymak &
Malecki, 2007) these elements were calculated on the base of geometrical parameters of
remotely operated vehicle (abbr. ROV) Ukwial.
Whereas Coriolis and centripetal matrixes were omitted because of small numerical values,
unimportant in computer simulation.
Control System of Underwater Vehicle Based on Artificial Intelligence Methods
287
Nonlinear mathematical model of an underwater vehicle has been considered in more detail
in (Fossen, 1994).
a)
CCl4 =
X
b)
X
Fig. 2. Location of particular Ukwial' s propellers in: a) horizontal and b) vertical plane
ROV Ukwial was designed in Underwater Technology Department from Gdansk University
Of Technology. It is remotely operated and powered from board. A construction of Ukwial
is based on cubicoidshape frame, where all propulsion system and added equipment are
mounted to the frame. This underwater vehicle has specific propulsion system, consisted of:
four, three blade screw propellers in horizontal plane (fig. 2, here au = 29°) and two, three
blade screw propellers in vertical plane. Each propeller is electrically driven.
Presented propulsion system enables to move underwater vehicle in water with average
speed 0,51,0 m/s and allows to control ROV's movement in five degrees of freedom (three
translations motions: in longitudinal axis of symmetry x G , in lateral axis of symmetry y D and
in vertical axis of symmetry z G , and two rotations around lateral axis of symmetry y and
around z Q axis).
Moreover specific location of propellers in horizontal plane (at an angle of 29° to the
longitudinal axis of symmetry) gives possibility of steering this ROV in case of one of
propellers is out of order.
3. Architecture of Ukwial's control system
Designed automatic control system of underwater vehicle consists of (fig. 3):
1. supervisory control unit, which is responsible for setting values of movement's
parameters, turning on and off individual controllers at the proper moments,
2. the four controllers of: course, displacement in X axis, displacement in Y axis and
draught, which generate adequate control signals: moment of force N, force in X axis,
force in Y axis and force Z.
Proportionalderivative action controllers based on the fuzzy logic have been applied to
carry out control of course, displacement in X axis, displacement in Y axis and draught
(fig. 4), where parameter p is adequate course, coordinate x, y or z.
Using of fuzzy logic method in FPD controllers depends on selection (Driankov et al., 1996):
288
Automation and Robotics
1. number, type and position's parameters of membership function of the input and
output variables,
2. fuzzy inference rules, which create base of rules.
Supervisory
control unit
Z^> ^
■■■■■■k.
course's
controller
&**
\*z
x°l
,*y^ —
controller of
displacement
in X axis
draught's
controller
T
controller of
displacement in Y axis
Fig. 3. Automatic control system of underwater vehicle called Ukwial
FPD
set value of
parameter/?
►
amplification
J change
Fuzzy
Inference System ", ,
i , control
signal t
/XX\
of error A e
actual value of parameter p a
UNDERWATER
VEHICLE
vector of
state [v,rj]
Fig. 4. Block diagram of fuzzy proportionalderivative controller FPD
Membership functions for linguistic input variables: error signal and derived change in
error and output variable  control signal were tuned with the aid of the mathematical
model simulation of the automatic controlled underwater vehicle. Direct and integral
indexes were used to evaluate control quantity of designed control system. Results of this
selection method for course controller have been presented in fig. 5.
Control System of Underwater Vehicle Based on Artificial Intelligence Methods
289
Presented membership functions selection allow to create base of 35 rules (fig. 6). Particular
rule could be read from the intersection of specified row and column. For the first row and
first column following rule has been obtained:
If error of course is Negative Large and change in error of course is Negative Large
then moment of force N is Negative Large
Rules from the Mac Vicar Whelan's standard base were chosen as the control rules (Garus &
Kitowski, 2001).
0.2 0.2
error of course
0.4 0.2 0.2 0.4
change in error of course
NL NM
1
"R 05
CD
■D
NS
PS
0.8
0.6 0.4 0.2 0.2 0.4 0.6
control signal  moment of force N
PM PL
0.8
Fig. 5. Fuzzy partition of the universe of discourse of course
290
Automation and Robotics
error of course
NL
NM
NS
z
PS
PM
PL
o
O
*H
Sh (D
<D 8
d
o
NL
NL
NL
NL
NM
z
PS
PL
NS
NL
NL
NM
NS
PS
PM
PL
Z
NL
NM
NM
Z
PM
PM
PL
PS
NL
NM
NS
PS
PM
PL
PL
PL
NL
NS
Z
PM
PL
PL
PL
control signal  moment of force N
Fig. 6. Base of rules of course controller (NL  Negative Large, NM  Negative Mean, NS 
Negative Small, Z  zero, PS  Positive Small, PM  Positive Mean, PL  Positive Large)
4. Results of numerical researches
Computer simulations were carried out in the Matlab environment on the platform
computer PC / Windows XP. At the beginning each controller was tuned with the aid of
direct and integral control quantity indexes.
Subsequently whole automatic control system of underwater vehicle Ukwial (fig. 3) was
tested. Researches were carried out in simulated underwater environment with or without
an influence of sea current with defined parameters: V v (velocity) and a p (an angle between
magnetic north and direction of affecting in horizontal plane).
Tested task of designed control system was to steer the underwater vehicle along desired
trajectory in vertical plane XZ (fig. 7).
X
r — f
yW = 90°
i i i i
I
I !
2 m
Fig. 7. Desired trajectory of Ukwial in vertical plane
Presented course of desired trajectory (fig. 7) comes from nature of the mission executed by
the underwater vehicle, which is inspection of hull's part located below surface of water
(fig. 8).
Control System of Underwater Vehicle Based on Artificial Intelligence Methods
291
X
desired
trajectory
hull of warship
(top view)
underwater vehicle
(top view)
angle of view
of camera a^= 70°
desired
angle of view 52°
Fig. 8. Desired trajectory of Ukwial in vertical plane (top view)
From the fig. 8 results additional condition that a course of Ukwial should be controlled to
the value of desired course 90°, what guarantees monitoring of whole underwater part of
inspected hull.
Assuming that camera of an underwater vehicle is immovable and underwater vehicle
moves along specified trajectory (fig. 7, fig. 8) following maximal errors of controlled
parameters were calculated: maximal error in X axis Ax = + 0,4 m, maximal error in Y axis
Ay = ± 0,5 m, maximal error of course Ay/=± 9°.
To illustrate changes of 4 parameters (3 coordinates and an angle of course) on single figure
following method has been accepted (fig. 9): changes of a course at the discrete points of
trajectory are presented as line segments covering with longitudinal axis of symmetry.
Additionally direction of affecting sea current was visualized in form of a red arrow, what
helps to illustrate conditions of moving in an underwater environment.
»)
Trajectory of underwater vehicle in space XYZ
Changes of course during motion along trajectory
0.5 \^""2 "° 5
coordinates [m] A coordinate x [m] coordinate;; [m] _1
coordinate x [m]
292
Automation and Robotics
b)
Trajectory of underwater vehicle in space XYZ
Changes of course during motion along trajectory
coordinate y [m]
1 coordinate x [m] coordinate;; [m]
1
coordinate x [m]
c)
Trajectory of underwater vehicle in space XYZ
Changes of course during motion along trajectory
coordinate y [m
coordinate x [m] coordinate^ [m]
coordinate x [m]
d)
Trajectory of underwater vehicle in space XYZ
Changes of course during motion along trajectory
coordinate y [m
coordinate x [m] coordinate;; [m]
1
coordinate x [m]
Fig. 9. Automatic steering of underwater vehicle along desired trajectory a) without sea
current and with different sea currents: b) V p = 0,5 m/s, a v = 0°, c) V p = 0,9 m/s, a v = 0°
and d) V p = 0,5 m/s, a v = 45°
Control System of Underwater Vehicle Based on Artificial Intelligence Methods
293
On the base of achieved results of numerical researches (time diagrams presented on fig. 9
and direct and integral control quantity indexes included in (Szymak, 2004)) following
partial conclusions have been found:
1. in the case of sea current does not affect, control system precisely controls movement of
underwater vehicle along desired trajectory,
2. in the case of sea current affects, underwater vehicle is " pushed out" from desired
trajectory with force depended on velocity of sea current in direction of affecting (for
velocity V p = 0,9 m/s value of coordinate y exceeds the maximal error in Y axis),
3. action of sea current affects also stabilization of a course (for velocity V p = 0,9 m/s value
of a course exceeds the maximal error of course),
4. in other cases (below velocity V p = 0,9 m/s) values of maximal errors are exceeded only
in short time (1 or 2 second), what does not influence on quality of recorded video,
5. limitation of Ukwial control in the presence of stronger sea current (above 1 m/s)
comes from limited value of thrust vector, which is generated by driving system.
5. Comparison of simulation and experiment
Experimental researches were carried out in the naval harbour Gdynia. Remotely operated
vehicle Ukwial was launched from the warship 'Tlaming" (fig. 10). Computer simulation
and experimental researches were executed without influence of sea currents. Selected
results of computer simulations with influence of sea current have been presented in fig. 9.
While experimental researches taking into account affect of sea current have not been
carried out yet.
Fig. 10. Launching of remotely operated vehicle Ukwial
Selected results of course's fuzzy control have been presented on fig. 11. Results of other
controller action have been inserted in (Szymak, 2004). Direct and integral indexes have
been used to the evaluation of control quantity tested controllers.
294
Automation and Robotics
EXPERIMENT
SIMULATION
a)
fa' * — =.'
time [s]
90 
i 1 80 
<L> 70 
2j 60 
o 50 
*2 40 
2 30 
o
O 20 
10 
5 10 15 20 25
time [s]
b)
time [s]
time [s]
c)
I 1
ifin
bi)
<i>
140
2j
120
<d
100
80
3
fin
o
5FI
^
time [s]
L „„..
^^^
^=
=t
j=
time [s]
Fig. 11. Control of underwater vehicle's course: a) from initial value 10° to set value 90°,
b) from initial value 340° to set value 180°, c) from initial value 0° to set value 180° with
additional manoeuvre in X axis
Received results of researches allow to formulate the following conclusions for selected
course FPD:
1. the better control quantity has been reached for underwater vehicle, which did not
make additional manoeuvre; in that case total hydrodynamic thrust vector generated by
propellers was used to change a course,
2. stabilizing influence of an umbilical cord on control of course can be observed on the
base of experimental researches compare to oscillation achieved in simulation; it
testifies that accepted model of an umbilical cord is not reliable,
3. designed course's controller carries out change of course 180° in average time 10s.
Control System of Underwater Vehicle Based on Artificial Intelligence Methods
295
EXPERIMENT
SIMULATION
a)[
b H
c)
time [s]
time [s]
time [s]
time [s]
— simulation • simulation with noise
Fig. 12. Control of underwater vehicle's draught: a) from initial value 0,5m to set value 7m,
b) from initial value 3m to set value 5,5m, c) from initial value 7,5m to set value 2m
(additional simulation with noise)
During the experimental researches also draught's controller was verified correctly (fig. 12).
On the base of received results it can be stated that:
1. signal coming from sensor of draught is less precise and has more added noise than
signal of a course; it can be testified on the base of simulation with noise (curves
received from experiment and simulation with noise are very similar, fig. 12c),
2. precise control of draught, which value is digitized with step 0,1m, is more difficult; the
same control method gives worse results in control of draught than in control of course,
3. designed draught's controller carries out change of lm in average time 5s.
Unfortunately controllers of displacement in X and Y axis were not verified because of
incorrect operation of underwater positioning system.
296 Automation and Robotics
6. Conclusion
Results of carried out numerical and experimental researches, which were presented
partially in fig. 9, 11 and 12 confirmed that fuzzy data processing can be successfully used to
steer the underwater vehicle with set values of movement's parameters.
Designed control system can be used to steer another underwater vehicles with different
driving systems, because control signals were forces and moment of forces, which were
processed to rotational speed of propellers with assistance of separate algorithm, specific for
definite type of the underwater vehicle.
Positive verification of course's and draught's controllers enabled their implementation in
the control desk of Ukwial.
Further researches should include: verification of controllers of displacement in X and Y
axis, applying of other selfadopting to varying environmental conditions control methods.
7. References
Driankov, D.; Hellendoorn, H. & Reinfrank, M. (1996). An introduction to Fuzzy Control,
WNT, ISBN 832042030X, Warsaw, in Polish
Fossen, T. I. (1994). Guidance And Control Of Ocean Vehicles, John Wiley & Sons Ltd., ISBN
9780471941132, Norway
Garus, J. & Kitowski, Z. (2001). Fuzzy Control of Underwater Vehicle's Motion, In: Advances
in Fuzzy Systems and Evolutionary Computation, Mastorakis N., pp. 100103, World
Scientific and Engineering Society Press, ISBN 9608052270
Kubaty, T. & Rowinski, L. (2001). Mine counter vehicles for Baltic navy, internet,
http://www.underwater.pg.gda.pl/publikacje
Szymak, P. (2004). Using of artificial intelligence methods to control of underwater vehicle in
inspection of oceanotechnical objects, PhD thesis, Naval Academy Publication, Gdynia,
in Polish
Szymak, P. & Malecki, J. (2007). NeuroFuzzy Controller of an Underwater Vehicle's Trim.
Polish Journal of Environmental Studies, Vol. 16, No 4B, 2007, pp. 171174, ISSN 1230
1485
18
Automatization of Decision Processes in
Conflict Situations: Modelling,
Simulation and Optimization
Zbigniew Tarapata
Military University of Technology in Warsaw, Faculty of Cybernetics
Poland
1. Introduction
Military conflict is one of the types of conflict situations. The automation of simulated
battlefield is a domain of Computer Generated Forces (CGF) systems or semiautomated
forces (SAF or SAFOR) (Henninger et al, 2000; Lee & Fishwick, 1995; Longtin & Megherbi,
1995; Lee, 1996; Mohn, 1994; Petty, 1995). CGF or SAF (SAFOR) is a technique, which
provides a simulated opponent using a computer system that generates and controls
multiple simulation entities using software and possibly a human operator. In the case of
Distributed Interactive Simulation (DIS) systems, the system is intended to provide a
simulated battlefield which is used for training military personnel. The advantages of CGF
are wellknown (Petty, 1995): they lower the cost of a DIS system by reducing the number of
standard simulators that must be purchased and maintained; CGF can be programmed, in
theory, to behave according to the tactical doctrine of any desired opposing force, and so
eliminate the need to train and retrain human operators to behave like the current enemy;
CGF can be easier to control by a single person than an opposing force made up of many
human operators and it may give the training instructor greater control over the training
experience. One of the elements of the CGF systems is module for movement planning and
simulation of military objects. In many of existing simulation systems there are different
solutions regarding to this subject. In the JTLS system (JTLS, 1988) terrain is represented
using hexagons with sizes ranging from 1km to 16km. In the CBS system (Corps Battle
Simulation, 2001) terrain is similarly represented, but vectoralregion approach is
additionally applied. In both of these systems there are manual and automatic methods for
route planning (e.g. in the CBS controller sets intermediate points (coordinates) for route). In
the ModSAF (Modular Semi Automated Forces) system in module "SAFsim", which simulates
the entities, units, and environmental processes the route planning component is located
(Longtin & Megherbi, 1995). In the paper (Mohn, 1994) implementation of a Tactical Mission
Planner for command and control of Computer Generated Forces in ModSAF is presented. In
the work (Benton et al., 1995) authors describe a combined onroad/ off road planning
system that was closely integrated with a geographic information system and a simulation
system. Routes can be planned for either single columns or multiple columns. For multiple
columns, the planner keeps track of the temporal location of each column and insures they
will not occupy the same space at the same time. In the same paper the Hierarchic Route
298 Automation and Robotics
Planner as integrate part of Predictive Intelligence Military Tactical Analysis System (PIMTAS) is
discussed. In the paper (James et al., 1999) authors presented ongoing efforts to develop a
prototype for ground operations planning, the Route Planning Uncertainty Manager (RPLUM)
tool kit. They are applying uncertainty management to terrain analysis and route planning
since this activity supports the Commander's scheme of manoeuvre from the highest
command level down to the level of each combat vehicle in every subordinate command.
They extend the PIMTAS route planning software to accommodate results of reasoning
about multiple categories of uncertainty. Authors of the paper (Campbell et al, 1995)
presented route planning in the Close Combat Tactical Trainer (CCTT). Authors (Kreitzberg et
al, 1990) have developed the Tactical Movement Analyzer (TMA). The system uses a
combination of digitized maps, satellite images, vehicle type and weather data to compute
the traversal time across a grid cell. TMA can compute optimum paths that combine both
onroad and offroad mobility, and with weather conditions used to modify the grid cost
factors. The smallest grid size used is approximately 0.5 km. The author uses the concept of
a signal propagating from the starting point and uses the traversal time at each cell in the
array to determine the time at which the signal arrives to neighbouring cells. In the paper
(Tarapata, 2004a) models and methods of movement planning and simulation in some
simulation aided system for operational training on the corpsbrigade level (Najgebauer,
2004) is described. A combined onroad/ off road planning system that is closely integrated
with a geographic information system and a simulation system is considered. A dual model
of the terrain ((1) as a regular network of terrain squares with square size 200mx200m, (2) as
a roadrailroad network), which is based at the digital map, is presented. Regardless of
types of military actions military objects are moved according to some group (arrangement
of units). For example, each object being moved in group (e.g. during attack, during
redeployment) must keep distances between each other of the group (Tarapata, 2001).
Therefore, it is important to recognize (during movement simulation) that objects inside
units do not "keep" required distances (group pattern) and determine a new movement
schedule. All of the systems presented above have no automatic procedures for
synchronization movement of more than one unit. The common solution of this problem is
when movement (and simulation, naturally) is stopped and commanders (trainees) make a
new decision or the system does not react to such a situation. Therefore, in the paper
(Tarapata, 2005) a proposition of a solution to the problem of synchronization movement of
many units is shown. Some models of synchronous movement and the idea of module for
movement synchronization are presented. In the papers (Antkiewicz et al., 2007; Tarapata,
2007c) the idea and model of command and control process applied for the decision
automata on the battalion level for three types of unit tasks: attack, defence and march are
presented.
The chapter is organized as follows. Presented in section 2 is the review of methods of
environment modelling for simulated battlefield. An example of terrain model being used in
the real simulator is described. Moreover, paths planning algorithms, which are being
applied in terrainbased simulation, are considered. Sections 3 and 4 contain description of
automatization methods of main battlefield processes (attack, defence and march) in
simulation system like CGF. In these sections, a decision automata, which is a component of
the simulation system for military training is described as an example. Presented in section 5
are some conclusions concerning problems and proposition of their solution in
automatization of decision processes in conflict situations.
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 299
2. Environment modelling for simulation of conflict situations
2.1 An overview
The terrain databasebased model is being used as an integrated part of route CGF systems.
Terrain data can be as simple as an array of elevations (which provides only a limited means
to estimate mobility) or as complex as an elevation array combined with digital map
overlays of slope, soil, vegetation, drainage, obstacles, transportation (roads, etc.) and the
quantity of recent weather. For example, in (Benton et al., 1995) authors describe HERMES
(Heterogeneous Reasoning and Mediator Environment System) will allow the answering of
queries that require the interrogation of multiple databases in order to determine the start
and destination parameters for the route planner.
There are a few approaches in which the map (representing a terrain area) is decomposed
into a graph. All of them first convert the map into regions of go (open) and nogo (closed).
The nogo areas may include obstacles and are represented as polygons. A few methods of
map representation is used, for example: visibility diagram, Voronoi diagram, straightline
dual of the Voronoi diagram, edgedual graph, linethinned skeleton, regular grid of
squares, grid of homogeneous squares coded in a quadtree system, etc. (Benton et al., 1995;
Schiavone et al., 1995a; Schiavone et al., 1995b; Tarapata, 2003).
The polygonal representations of the terrain are often created in database generated systems
(DBGS) through a combination of automated and manual processes (Schiavone et al., 1995;
Schiavone et al., 2000). It is important to say that these processes are computationally
complicated, but are conducted before simulation (during preparation process). Typically,
an initial polygonal representation is created from the digital terrain elevation data through
the use of an automated triangulation algorithm, resulting in what is commonly referred to
as a Triangulated Irregular Network (TIN). A commonly used triangulation algorithm is the
Delaunay triangulation. Definition of the Delaunay triangulation may be done via its direct
relation to the Voronoi diagram of set S with an N number of 2D points: the straightline
dual of the Voronoi diagram is a triangulation of S.
The Voronoi diagram is the solution to the following problem: given set S with an N number
of points in the plane, for each point pi in S what is the locus of points (x,y) in the plane that
are closer to pi than to any other point of SI
The straightline dual is defined as the graph embedded in the plane obtained by adding a
straightline segment between each pair of points of S whose Voronoi polygons share an
edge. Fig.la depicts an irregularly spaced set of points S, its Voronoi diagram, and its
straightline dual (i.e. its Delaunay triangulation).
The edgedual graph is essentially an adjacency list representing the spatial structure of the
map. To create this graph, we assign a node to the midpoint of each map edge, which does
not bound an obstacle (or the border). Special nodes are assigned to the start and goal
points. In each nonobstacle region, we add arcs to connect all nodes at the midpoints of the
edges, which bound the same region. The fact that all regions are convex, guarantees that all
such arcs cannot intersect obstacles or other regions. An example of the edgedual graph is
presented in Fig.lb.
The visibility graph, is a graph, whose nodes are the vertices of terrain polygons and edges
join pairs of nodes, for which the corresponding segment lies inside a polygon. An example
is shown in Fig.2.
300
Automation and Robotics
• • •
A set S of N points in the plane
The straightline dual of the Voronoi
diagram (the Delaunay triangulation)
Input Map
Edge DualGraph c
(a) (b)
Fig.l. (a) Voronoi diagram and its Delaunay triangulation (Schiavone et aL, 1995); (b) Edge
dual graph. Obstacles are represented by filled polygons
Fig.2. Visibility graph (Mitchell, 1999). The shortest geometric path is marked from source
node s to destination t. Obstacles are represented by filled polygons
The regular grid of squares (or hexagons, e.g. in JTLS system (JTLS, 1988)) divides terrain
space into the squares with the same size and each square is treated as having homogeneity
from the point of view of terrain characteristics (Fig.3).
The grid of homogeneous squares coded in quadtree system divides terrain space into the squares
with heterogeneous size (Fig.4). The size of square results from its homogeneity according to
terrain characteristics. An example of this approach was presented in (Tarapata, 2000).
Advantages and disadvantages of terrain representations and their usage for terrainbased
movement planning are presented in section 2.3.
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 301
Fig.3. Examples of terrain representation in a simulated battlefield: (a) regular grid of terrain
hexagons; (b) regular grid of terrain squares and its graph representation.
V
•
□ □
□ □ n
□ □
DDD
□ □
(a) (b)
Fig.4. (a) Partitioning of the selected real terrain area into squares of topographical
homogeneous areas; (b) Determination of possible links between neighbouring squares and
a description of selected vertices in the quadtree system for terrain area presented in (a)
In many existing simulation systems there are different solutions regarding terrain
representation. In the JTLS system (JTLS, 1988) terrain is represented using hexagons with a
size ranging from 1km to 16km. In the CBS system (Corps Battle Simulation, 2001) terrain is
similarly represented, but an additional vector alregion approach is applied. In the
simulationbased operational training support system "Zlocien" (Najgebauer, 2004) a dual
model of the terrain: (1) as regular network of terrain squares with square size 200mx200m,
(2) as roadrailroad network, which is based on a digital map, is used.
Taking into account multiresolution terrain modelling (Behnke, 2003; Cassandras et al., 2000;
Davis et al., 2000; Pai & Reissell, 1994; Tarapata, 2001) the approach is also used for
battlefield modelling and simulation. For example, in the paper (Tarapata, 2004b)
a decomposition method, and its properties, which decreases computational time for path
searching in multiresolution graphs has been presented. The goal of the method is not only
computation time reduction but, first of all, using it for multiresolution path planning (to
apply similarity in decision processes on different command level and decomposing
merging approach). The method differs from very effective representations of terrain using
302 Automation and Robotics
quadtree (Kambhampati & Davis, 1986) because of two main reasons: (1) elements of
quadtree which represent a terrain have irregular sizes, (2) in majority applications quadtree
represents only binary terrain with two types of region: open (passable) and closed
(impassable). Hence, this approach is very effective for mobile robots, but it is not adequate,
for example, to represent battlefield environment (Tarapata, 2003).
2.2 Terrain model for a battlefield simulation  an example
The terrain (environment) model So, which we use as a battlefield model for further
discussions (sections: 3.4 and 4) is based on the digital map in VPF format. The model is
twofold: (1) as a regular network Z\ of terrain squares, (2) as a roadrailroad network Z2 and
it is defined as follows (Tarapata, 2004a):
S (t) = (Z x {t),Z 2 {t)) (1)
Regular grid of squares Z\ (see Fig.3) divides terrain space into squares with the same size
(200mx200m) and each square is homogeneous from the point of view of terrain
characteristics (degree of slowing down velocity, ability to camouflage, degree of visibility,
etc.). This square size results from the fact that the nearest level of modelled units in SBOTSS
"Zlocien" (Najgebauer, 2004) is a platoon and 200m is approximately the width of the
platoon front during attack. The Z\ model is used to plan off road (crosscountry) movement
e.g. during attack planning. In the Zi roadrailroad network (see Fig.5) we have crossroads
as network nodes and section of the roads linking adjacent crossroads as network links
(arcs, edges). This model is used to plan fast onroad movement, e.g. during march
(redeployment) planning and simulation.
These two models of terrain are integrated. This integration gives possibilities to plan
movement inside both models. It is possible, because each square of terrain contains
information about fragments of road inside this square. On the other hand each fragment of
road contains information on squares of terrain, which they cross. Hence, route for any
object (unit) may consist of sections of roads and squares of terrain. It is possible to get off
the road (if it is impassable) and start movement offroad (e.g. omit impassable section of
road) and next returning to the road. Conversely, we can move offroads (e.g. during
attack), access a section of road (e.g. any bridge to go across the river) and then return back
off road (on the other riverside). The characteristics of both terrain models depend on: time,
terrain surface and vegetation, weather, the day and time of year, opponent and own
destructions (e.g. destruction of the bridge which is element of roadrailroad network) (see
Table 1 and Table 2).
The formal definition of the regular network of terrain squares Z\ is as follows (see Fig.3):
Z 1 (0 = (G 1 ,^ 1 (0) P)
where Gi defines Berge's graph defining structure of squares network, q =(W l9 T l ) > W x  set
of graph's nodes (terrain squares); T x : W x — >• 2 Wl  function describing for each nodes of G set
of adjacent nodes (maximal 8 adjacent nodes); xp^ = {^ 10 (.^),^ 11 (.^),^ 12 (.^),...,^ izr] (.,*)} 
set of functions defined on the graph's nodes (depending on t).
One of the functions of W^t) is the function of slowing down velocity FSDV(n,...), n eW x
which describes slowing down velocity (as a real number from [0,1]) inside the nth square
of the terrain,
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 303
FSDV:W 1 xTxK_VehxK_MeteoxK_YearSxK_DayS^[Q r l]
(3)
where: T  set of times, K_Veh  set of vehicle types, K_Veh ={Veh_Wheeled, Veh_Wheeled
Caterpillar, Veh_Caterpillar}; K_Meteo  set of meteorological conditions, K_YearS  set of
the seasons of year, K_DayS  set of the day of the season.
The function FSDV is used to calculate crossing time between two squares of terrain. Other
functions (as subset of x ¥ 1 (t) ) described on the nodes (squares) of Gi and essential from the
point of view of trafficability and movement are presented in the Table 1.
Description of the function
Definition of the function
Geographical coordinates of node (centre of square)
FWSP iWj^Rs
Ability to camouflage in the square
FCamiWixT >[0,1]
Degree of terrain undulation in the square
FUnd : Wi >[0,1]
Subset of node's set of Z2 network, which are located
inside the square
FW10nW2: Wi> 2 Wl
Table 1. The most important functions described on the terrain square (node of Gi)
Formal definition of the roadrailroad network Z2 is following (see Fig.5):
Z 2 (t) = (G 2 ,%(tU 2 (t)) (4)
where G2 describes Berge's graph defining structure of roadrailroad network, q lw jj \,
W 2  set of graph's nodes (crossroads); U 2 czW 2 xW 2  set of graph G2 arcs (sections of roads);
x ¥ 2 (t) = { x ¥ 20 (',tX x ¥ 2l (',t\..., x ¥ 2LW2 (',t)} ~ set of functions defined on the graph's G 2 nodes
(depending on t); r (t)={c ■ (;t)}. " set °^ functions defined on the graph's G2 arcs
(depending on t). Functions (as subset of *F 2 (f) and g 2 (t)) are presented, which are essential
from the point of view of trafficability and movement, described on the nodes and arcs of G2
in the Table 2. One of the most important functions is slowing down velocity function
FSDV2(u,...), ueU 2 which describes slowing down velocity (as real number from [0,1]) on
the wth arc (section of road) of the graph:
FSDV2:U 2 xTxK_VehxK_MeteoxK_YearSxK_DayS^>[0,l]
(5)
Fig.5. Roadrailroad network (lefthand side) and its graph model Gi (righthand side)
304 Automation and Robotics
Description of the function
Definition of the function
Geographical coordinates of node (crossroad)
FWSP2 :W 2 ^R 3
Node Zi, which contains node 7, 2
FW20nWl: W 2 > Wi
Subset of set of nodes of the Zi network, which contains the
arc
FU20nWl: U 2 > 2 Wl
Degree of terrain undulation on the arc
FUnd : U 2 >[0,1]
Arc length
FLen : U 2 >R +
Table 2. The most important functions described on the crossroads and on part of the roads
(Gi)
2.3 Paths planning algorithms in terrainbased simulation
There are four main approaches that are used in a battlefield simulation (CGF systems) for
paths planning (Karr et al., 1995): free space analysis, vertex graph analysis, potential fields
and gridbased algorithms.
In the free space approach, only the space not blocked and occupied by obstacles is
represented. For example, representing the centre of movement corridors with Voronoi
diagrams (Schiavone et al., 1995) is a free space approach (see Fig.l). The advantage of
Voronoi diagrams is that they have efficient representation. Disadvantages of Voronoi
diagrams are as follows: they tend to generate unrealistic paths (paths derived from Voronoi
diagrams follow the centre of corridors while paths derived from visibility graphs clip the
edges of obstacles); the width and trafficability of corridors are typically ignored; distance is
generally the only factor considered in choosing the optimal path.
In the vertex graph approach, only the endpoints (vertices) of possible path segments are
represented (Mitchell, 1999). Advantages of this approach: it is suitable for spaces that have
sufficient obstacles to determine the endpoints. Disadvantages are as follows: determining
the vertices in "open" terrain is difficult; trafficability over the path segment is not
represented; factors other than distance can not be included in evaluating possible routes.
In the potential field approach, the goal (destination) is represented as an "attractor", obstacles
are represented by "repellors", and the vehicles are pulled toward the goal while being
repelled from the obstacles. Disadvantages of this approach: the vehicles can be attracted
into box canyons from which they can not escape; some elements of the terrain may
simultaneously attract and repel.
In the regular grid approach, the grid overlays the terrain, terrain features are abstracted into
the grid, and the grid rather than the terrain is analyzed. Advantages are as follows: analysis
simplification. Disadvantages: "jagged" paths are produced because movement out of a grid
cell is restricted to four (or eight) directions corresponding to the four (or eight)
neighbouring cells; granularity (size of the grid cells) determines the accuracy of terrain
representation.
Many route planners in the literature are based on the offline path planning algorithms: a path
for the object is determined before its movement. The following are exemplary algorithms of
this approach: Dijkstra's shortest path algorithm, A* algorithm (Korf, 1999), geometric path
planning algorithms (Mitchell, 1999) or its variants (Korf, 1999; Logan, 1997; Logan &
Sloman, 1997; Rajput & Karr, 1994; Tarapata, 1999; 2001; 2003; 2004; Undeger et al, 2001).
For example, A* has been used in a number of Computer Generated Forces systems as the
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 305
basis of their component planning, to plan road routes (Campbell et al., 1995), to avoid
moving obstacles (Karr et al., 1995), to avoid static obstacles (Rajput & Karr, 1994) and to
plan concealed routes (Longtin & Megherbi, 1995). Moreover, the multicriteria approach to
the path determined in CGF systems is often used. Some results of selected multicriteria
paths problem and analysis of the possibility to use them in CGF systems are described, e.g.
in (Tarapata, 2007a). Very extensive discussion related to geometric shortest path planning
algorithms was presented by Mitchell in (Mitchell, 1999) (references consist of 393 papers
and handbooks). The geometric shortest path problem is defined as follows: given a
collection of obstacles, find an Euclidean shortest obstacleavoiding path between two given
points. Mitchell considers the following problems: geodesic paths in a simple polygon; paths
in a polygonal domain (searching the visibility graph, continuous Dijkstra's algorithm);
shortest paths in other metrics (L p metric, link distance, weighted region metric, minimum
time paths, curvatureconstrained shortest paths, optimal motion of nonpoint robots,
multiple criteria optimal paths, sailor's problem, maximum concealment path problem,
minimum total turn problem, fuelconsuming problem, shortest paths problem in an
arrangement); online algorithms and navigation without map; shortest paths in higher
dimensions.
The basic idea of the online path planning algorithms (Korf, 1999), in general, is that the object
is moved stepbystep from cell to cell using a heuristic method. This approach is borrowed
from robots motion planning (Behnke, 2003; Kambhampati & Davis, 1986; LaValle, 2006;
Logan & Sloman, 1997; Undeger et al., 2001). The decision about the next move (its direction,
speed, etc.) depends on the current location of the object and environment status. Examples
of online path planning algorithms (Korf, 1999): RTA* (RealTime A*), LRTA* (Learning
RTA*), RTEF (RealTime Edge Follows), HLRTA*, eFALCONS. For example, the idea of
RTEF (realtime edge follow) algorithm (Undeger et al., 2001) is to let the object eliminate
closed directions (the directions that cannot reach the target point) in order to decide on
which way to go (open directions). For instance, if the object has a chance to realize that
moving north and east won't let him reach the goal state, then it will prefer going south or
west. RTEF finds out these open and closed directions by decreasing the number of choices
the object has. However, the online path planning approach has one basic disadvantage: in
this approach using a few criterions simultaneously to find an optimal (or acceptable) path
is difficult and it is rather impossible to estimate, the moment of reaching the destination in
advance. Moreover, it does not guarantee finding optimal solutions and even suboptimal
ones may significantly differ from acceptable.
3. Automatization of main battlefield decision processes
3.1 Introduction
In this section the idea and model of command and control process applied for the decision
automata for attack and defence on the battalion level are considered. In section 4 we will
complete the description of the automata for the third type of unit task  march. As it was
written in section 1 these problems are very rarely discussed in the literature; however some
ideas we can come across in (Dockery & Woodcock et al., 1993; Hoffman H. & Hoffman M.,
2000). The decision automata being presented replaces battalion commanders in the
simulator for military trainings and it executes two main processes (Antkiewicz et al., 2003;
Antkiewicz et al., 2007): decision planning process and direct combat control. The decision
planning process (DPP) contains three stages: the identification of a decision situation, the
306 Automation and Robotics
generation of decision variants, the variants evaluation and the selection of the best variant,
which satisfy the proposed criteria. The decision situation is classified according to the
following factors: own task, expected actions of opposite forces, environmental conditions 
terrain, weather, the day and season, current state of own and opposite forces in a sense of
personnel and weapon systems. For this reason, we can define identification of the decision
situation (the first stage of the DPP and the most interesting from the point of view of
automatization process) as a multicriteria weighted graph similarity decision problem
(MWGSP) (Tarapata, 2007b) and present it in sections 3.3 and 3.4 presenting them through a
short overview of structural objects similarity (section 3.2). The remaining two stages of DPP
(the variants evaluation and selecting the best variant) are described in detail in (Antkiewicz
et al., 2003; Antkiewicz et al., 2007): for each class of decision situations a set of action plan
templates for subordinate and support forces are generated. For example the proposed
action plan contains (Antkiewicz et al, 2007): forces redeployment, regions of attack or
defence, or manoeuvre routes, intensity of fire for different weapon systems, terms of
supplying military materiel to combat forces by logistics units. In order to generate and
evaluate possible variants the presimulation process based on some procedures: forces
attrition procedure, slowing down rate of attack procedure, utilization of munitions and
petrol procedure is used. In the evaluation process the following criteria: time and degree of
task realization, own losses, utilization of munitions and petrol are applied.
3.2 Structural objects similarity  a short overview
Object similarity is an important issue in applications such as e.g. pattern recognition. Given
a database of known objects and a pattern, the task is to retrieve one or several objects from
the database that are similar to the pattern.
If graphs are used for object representation this problem turns into determining the
similarity of graphs, which is generally referred to as graph matching. Standard concepts in
graph matching include (Farin et al., 2003; Kriegel & Schonauer, 2003): graph isomorphism,
subgraph isomorphism, graph homomorphism, maximum common subgraph, error
tolerant graph matching using graph edit distance (Bunke, 1997), graph's vertices similarity,
histograms of the degree sequence of graphs. A large number of applications of graph
matching have been described in the literature (Bunke, 2000; Kriegel & Schonauer, 2003;
Robinson, 2004). One of the earliest applications was in the field of chemical structure
analysis. More recently, graph matching has been applied to casebased reasoning, machine
learning planning, semantic networks, conceptual graph, monitoring of computer networks,
synonym extraction and web searching (Blondel et al., 2004; Kleinberg, 1999; Kriegel &
Schonauer, 2003; Robinson, 2004; Senellart & Blondel, 2003). Numerous applications from
the areas of pattern recognition and machine vision have been reported (Bunke, 2000;
Champin & Solon, 2003; Melnik et al., 2002). They include recognition of graphical symbols,
character recognition, shape analysis, threedimensional object recognition, image and video
indexing and others. It seems that structural similarity is not sufficient for similarity
description between various objects. The arc in the graph gives only binary information
concerning connection between two nodes. And what about, for example, the connection
strength, connection probability or other characteristics? Thus, the weighted graph matching
problem is defined, but in the literature it is relatively rarely considered (Almohamad et al.,
1993; Champin & Solon, 2003; Tarapata, 2007b; Umeyama, 1988) and it is most often
regarded as a special case of graph edit distance, which is a very timecomplex measure
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 307
(Bunke, 2004; Kriegel & Schonauer, 2003). Therefore, in section 3.3 we will define a
multicriteria weighted graph similarity decision problem (MWGSP) and we will show how
to use it for pattern recognition (matching) of decision situations (PRDS) in decision
automata, which replaces commanders in simulators for military trainings (Antkiewicz et
al, 2007).
3.3 Definition of the multicriteria weighted graph similarity problem (MWGSP)
3.3.1 Structural and quantitative similarity measures between weighted graphs
Let us define weighted graph WG as follows:
WG = Ig, {f, («)},, {1 ,..., iF} , {hj (a)} MK .., LH] ) (6)
where: G  Berge's graph, G = (N G ,A G ), Ng, Aq  sets of graph's nodes and arcs,
A G a {(«,«'): «,«'g]V g }, f t \N G ^R n  the zth function described on the graph's nodes,
i = l,...LF , (LF  number of node's functions); h. : A G » R"  the ;th function described on
the graph's arcs, j = l,...LH (LH  number of arc's functions).
Let two weighted graphs Ga and Gg be given. We propose to calculate two types of
similarities of the Ga and Gg: structural and nonstructural (quantitative). To calculate
structural similarity between Ga and Gg it is proposed to use approach defined in (Blondel
et al., 2004). Let A and B be the transition matrices of Ga and Gg. We calculate following
sequence of matrices:
BZ,A T +A T Z,B
k>0 (7)
\BZ k A l +A £ Z k B\ F
where Zo=l (matrix with all elements equal 1); x T  matrix x transposition; U  Frobenius
(Euclidian) norm for matrix x, W = VVx 2 , ng  number of matrix rows (number of
nodes of Gg), yia  number of matrix columns (number of nodes of Ga) Element Z; ;  of the
matrix Z describes similarity score between the zth node of the Gg and the ;th node of the
Ga The essence of the graph's nodes similarity is the fact that two graphs' nodes are similar
if their neighbouring nodes are similar. The greater value of Zy the greater the similarity
between the zth node of the Gg and the ;th node of the Ga. We obtain structural similarity
matrix S(Ga,Gb) between nodes of graphs Ga and Gg as follows (Blondel et al., 2004):
S(G A ,G B ) = [ Slj ] n ^ = limZ 2t (8)
Some computation aspects of calculation S(Ga,Gb) have been presented in (Blondel et al.,
2004). We can write (7) more explicit by using the matrixtovector operator that develops a
matrix into a vector by taking its columns one by one. This operator, denoted vec, satisfies
the elementary property vec(C X D)=(D T ®C T ) vec(X) in which (8) denotes the Kronecker
product (also denoted tensorial, direct or categorial product). Then, we can write equality
(7) as follows:
308
Automation and Robotics
(A®B + A T ®B T )z k
(9)
\\(A®B + A T ®B T )z k \\
II IIf
Unfortunately, the iteration zu+i does not always converge. Authors of (Melnik et aL, 2002)
showed that if we change the formula (9) for z = (A®B + A T ®B T )z k +b ^ then the
k+1 \(A®B + A T ®B T )z k +b\ p
formula (9) converges for b>0. Having matrix S{Ga,Gb), we can formulate and solve an
optimal assignment problem (using e.g. Hungarian algorithm) to find the best allocation
matrix X = [x tj \ xn of nodes from graph describing Ga, Gb'.
with constraints:
d s (G A ,G B ) = £l>.. x y > max
(10)
i=l
n A
£x.. <1, i = l,n B
7=1
V V x,e{0,l}
ie{l,...,n B } je{l,...,n A } lJ
The ds(GA,GB) describes the value of structural similarity measure of Ga and Gb (Fig.6).
(ii)
(12)
(13)
1 Gb 2
Gc
1 c 2
1 G ° 2
G E
1 2
It^® Q^^© © — © © — © Q — ©
&
©— © ©— © ©— © ©
S(G, ? G)=[^
G £ {G s: G c ,G^G f } =
^(G, ? G)=[v;(l)]^
1
G*
2
G c
G*
2
G D
1
G A
2
G E
1
G
A
2
0*91
mail
D
B.20I
OJO
0,109
9
0.109
1Z4B
0.31 a
ojis
OJM
0.204
9
0.204
D.HI
e.221
0.8)1
0.221
0.243
0J18
1248
0,318
<t,m
0.109
0,199
0,204
1409
0.94
D
1201
491
0.2O1
0.100
1368
0.109
1248
0.31 8
0.248
0J1S
0,204
1409
0,»4
1201
1221
0.201
0:221
0.2i3
0.118
1248
0.31!
0.109
0.J86
0.199
204
1408
0.204
US
UZS
0.5
0.25
035
0.5
0.25
0.25
0.5
0.25
035
0.5
0.25
□
a
125
0,25
8
a
0.25
n
0.25
9
0.5
DM
1
0.25
0.25
c
12S
0.25
0.2J
0.2;
9
9
0.2S
as
0.2S
9
us
0.25
0.5
0.5
0.25
035
a
0.25
0.25
0.25
125
0.5
Fig.6. Examples of weighted graphs with a single function described on the nodes (set of
functions described on the arcs is empty) and their structural (S(GA,G)) and quantitative
(V*(G A ,G) ) similarity matrices. Filled cells describe ones, which create optimal assignment
the nodes of GA to nodes of G.
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 309
To calculate nonstructural (quantitative) similarity between Ga and Gb we should consider
similarity between values of node's and arc's functions (nodes and arcs quantitative similarity).
To compute nodes quantitative similarity we propose to create vector v(G A ,G B ) = (V l ,...,V LF )
of matrices, where V k = ~v..(£)l , k=l,...,LF, describing similarity matrix between nodes
L Jn B xn A
of Ga and Gb from the point of view of the kth node's function (f k A :N G — > R" for Ga and
// : N G > R n f° r Gg) and v v (k) = //(0 _ //O') describes "distance" between the zth node
of Gb and the ;th node of Ga from the point of view of // and f£ , respectively. We can
apply a norm with parameter p > 1 as distance measure:
\f' (o  ft u)\\ = \\ft (o  ft (j)\l = £\ftr (o  a; (/>[
„Y /P
(14)
where f k A r (•) , f* r (•) describe the rth component of the vector being value of fjf and // ,
respectively. Next, we compute for each k=l,...,LF normalized matrix ?£ ="v*.(&)l /
where v*.(k) = v f (k)/\v k  . This procedure guarantees that each v tj (k) e [0, 1] . Finally, we
compute total quantitative similarity between the zth node of Gb and the ;th node of Ga as
follows:
LP LP
A e[o,i] ( 15 )
The ^qn(Ga,Gb) nofc quantitative similarity measure of Ga and Gg we compute solving
assignment problem (10)(12) substituting — Vy for Sy (because of that the smaller value of Vy
the better) and dQ^G^GB) for ds(GA / GB) in (10). Example of calculations similarity matrices
between nodes of some graphs and similarity measures ds and dQN between graphs are
presented in the Fig. 6 and in the Table 3. Let us note that the best structural matched graph
to Ga is Gb (^s(Ga,Gb)=1.423 is the maximal value among of values of this measure for other
graphs) but the best quantitative matched graph to Ga is Gc (dQN(GA,Gc) = is minimal value
among of values of this measure for other graphs). Question is: which graph is the most
similar to Ga : Gg or Gc? Some method for solving the problem and to answer the question is
presented in section 3.3.2: we have to apply multicriteria choice of the best matched graph to
Ga. We can obtain arcs quantitative similarity measure dQAiG^Gs) by analogy to dQ^G^Gs): we
build vector e(G,,G a ) = (E,,...,E r „) of matrices, where E, =\e..(k)] ,k=l,...,LH (rriA, ms 
v A 7 if/ \1 Lti I k l ij v ^ 1 m B xm A v
number of arcs in Ga and Gb) describing similarity matrix between arcs of Ga and Gb from
the point of view of the kth arc's function ( hf : A G » R" for Ga and h* : A G ^ R n for Gb),
 LH LH
e t] {k) = \h:(i)hf{j)\ ,next e ; j (k) = e ij (k)\\E t \\ and e , = £ M k ■ < (*), Ift=l, t ^ t *0
P k=l k=l k\,...,LH
Substituting in (10) ey for Sy, dQAiG^Gs) for ds^^Gs) and solving (10)(12) we obtain
dQA(GA,GB).
310
Automation and Robotics
Graph G
d s (GA,G)
dQN(GA,G)
0.5<Is(Ga,G)  0.5d QN (GA,G)
G B
1.423
0.5
0.462
G c
1.412
0.706
G D
1.412
0.25
0.456
G E
1.225
0.5
0.362
Table 3. Values of similarity measures between Ga and each of the four graphs from Fig. 6
Let us note that it is possible to determine single quantitative similarity measure for Ga and
Gb . To this end we use some transformation of graph G = (N,A) into temporary graph
G* =(n*,A*\ as follows: N* = NuA, A* cz JV*xiV* and
V 3(v,x) = fl=>(v,fl)e/p
veN,aeA\xeN /
( 3 (x,v) = a => (a,v) e A* )
(16)
If G was a weighted graph then in G* we attribute the arc's and node's functions from G to
appropriate nodes of G* (that is to nodes and arcs from G). Using this procedure for Ga and
Gb we obtain G* and G* . Next, for G* and G* we can calculate nodes quantitative
similarity measure d pN (G* A ,G* B ) . Example of constructing G* from G is presented in the Fig.7.
fid) fi(2)
q>(i^(?)
/, l( 1,3) ft,{2,3) y \
NJk, ^' V M1.4),
j K (4,3) rf
ft,(1 p 2) A(2)
fti(2 P 3)
fi(4) fti(4,3) ^(3)
Fig.7. Transformation of G (lefthand side) into G* (righthand side)
3.3.2 Formulation of multicriteria weighted graphs similarity problem (MWGSP)
Let us accept SG = {G l ,G 2 ,...,G M } as a set of weighted graphs defining certain objects.
Moreover, we have weighted graph P that defines a certain pattern object. The problem is to
find such a graph G° from SG that is the most similar to P. We define this problem as a
multicriteria weighted graphs similarity problem (MWGSP), which is a multicriteria
optimization problem in the space SG with relation Rd:
MWGSP = (SG,F,R D )
where F:SG^R\ F(G) = (d s (P,G),d QN (P,G),d QA (P,G)) and
(17)
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 31 1
(Y,Z)eSGxSG: d s (PJ)>d s (P,Z) a
d QN {P,Y)<d QN {P,Z)A
d QA {P,Y)<d QA {P,Z)
(18)
Domination relation Rd (Pareto relation between elements of SG) gives possibilities to
compare graphs from SG. Weighted graph Z is more similar to P than Y if structural
similarity between P and Y is not smaller than between P and Z and, simultaneously, both
quantitative similarities between P and Y are not greater than between P and Z. There are
many methods for solving the problem (17) (Eschenauer et al., 1990): weighted sum
(scalarization of set of objectives), hierarchical optimization (the idea is to formulate a
sequence of scalar optimization problems with respect to the individual objective functions
subject to bounds on previously computed optimal values), tradeoff method (one objective
is selected by the user and the other ones are considered as constraints with respect to
individual minima), method of distance functions in L p norm ( p > 1 ) and others. We
propose to use scalar function H(G) :SG —> R as weighted sum of objectives:
H(G) = a r d s (P,G) + a 2 {d QN (P,G)) + a 3 \d QA (P,G))
a l ,a 2 ,a 3 >0, a x + a 2 + a 3 = 1
Taking into account (19) the problem of finding the most matched G° to pattern P can be
formulated as follows: to determine such a G° e SG , that H(G° ) = max H(G) • In the last
GeSG
column of the Table 3 the scalar function H(G) is defined as follows:
H(G) = a r d s (P, G) + a 2 • (d QN (P, G)) + a 3 • (d QA (P, G)) (20)
where a x = a 2 = 0.5 , a 3 = 0, P = G A , SG = {G B ,G C ,G D ,G E } . Let us note that the best matched
graph to G A being solution of MWGSP with scalar function H(G) is G c (H(Go=G c )=0.706).
In the paper (Tarapata, 2007b) epsilonsimilarity of weighted graphs as another view on
quantitative similarity between weighted graphs is additionally considered.
3.4 Application of weighted graphs similarity to pattern recognition of decision
situations
For the identification of the decision situation described in section 3.1 we define decision
situations space as follows:
DSS = \SD: SD = [SD tj \ =KX (21)
where SD denotes net of terrain squares as a model of activities (interest) area
SD tj =(SD^) k=l 8 . For the terrain square with the indices (i,j) each of elements denotes:
SD.j  the degree of terrain passability, SD*  the degree of forest covering, SDl  the
degree of water covering, SD*  the degree of terrain undulating, SDl  armoured power
(potential) of opposite units deployed in the square, SD^  infantry power (potential) of
312 Automation and Robotics
opposite units deployed in the square, SDl  artillery power (potential) of opposite units
deployed in the square, SDl  coordinates of square, X  the width of an activities (interest)
area (number of squares), Y  the depth of an activities (interest) area (number of squares)
and SD* e [0,1], k = 1,...,7 , SD* e R 2 + . Moreover, we have set PDSS of decision situations
patterns written in the database, PDSS = {PS : PS e DSS} and current situation CS e DSS .
The problem is: to find the most similar PS e PDSS to current situation CS e DSS .
In the presented proposition the weighted graphs similarity approach to identification of
decision situation is used. It consists of three stages:
1. Building weighted graphs WGT(CS), WGD(CS) and WGT(PS), WGD(PS) representing
decision situations: current (CS) and pattern (PS) for topographical conditions (WGT)
and units (potential) deploying (WGD);
2. Calculation of similarity measures between pairs: WGT(CS), WGT(PS) and WGD(CS),
WGD(PS) for each PS e PDSS ;
3. Selecting the most similar PS to CS using calculated similarity measures.
Stage 1
The first stage is to build weighted graphs WGT and WGD as follows:
WGT = IgT = (N GT ,A GT ),{f k (n)} k ^\ WGD = IgD = (N GD ,A GD ),{f k D (n)} kG{l _ 4}
\ neN GT I \ neN GD
where G (GT or GD)  Berge's graphs, G = (N G , A G ) , Ng, Ag  sets of graph's nodes and arcs,
A G <={(«,«'):«,«' e N G \ . Weighted graphs WGT and WGD describe decision situations
(current CS and pattern PS). Each node n of GT and GD describes terrain cells (i,j)=n with
nonzero values of characteristics defined as components of SD.. from (21) and
^ /*»=^> f?( n > SD l> t y j^ n )= SD T' ff(»)= SD l Two nodes x >y^ N GD
£e{l,...,4} J ke{l,...,3} J
(for x, y e N GT by analogy) are linked by an arc, when cells represented by x and y are
adjacent (more precisely: they are adjacent cells that taking into account the direction of
action, see Fig.8). For example, the terrain can be divided into 15 cells (3 rows and 5
columns, lefthand side, see Fig.8). The units are located in some cells (denoted by circles
and Xs). Structural representation of deployment of units is defined by the graph GD. Let us
note that similar representation can be used for topographical conditions (single graph for
one of the topographical information layer: waters, forests, passability or single graph GT
for all of this information, see Fig.8, righthand side).
Stage 2
Having weighted graphs WGD(CS) and WGD (PS) (WGT(CS) and WGT(PS)) representing
current CS and pattern PS decision situations (for units deploying) we use the procedure
described in section 3.3.1 to calculate structural and quantitative similarity measures for
both graphs. We obtain for WGD: d s (WGD(CS), WGD(PS))= d D s (CS,PS) , d QN (WGD(CS),
WGD(PS))= d° N (CS, PS) and for WGT: d s (WGT(CS),WGT(PS))= d T s (CS, PS) ,
d QN (WGT(CS) f WGT(PS))= d T QN (CS,PS) .
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 31 3
cs
__o_Q
X K
EBB
I
Fig. 8. Deployment of units and their structural (graph GD) representation (lefthand side)
and terrain covering (growth) and its structural (GT) representation (righthand side). Circle
(O) and sharp (X) describe two types of units
Stage 3
We formulate problem (17), separately for WGT and WGD, where: SG:=PDSS, F(G):=F D (PS),
d s (P, G) := d D s (CS, PS) , d QN (P, G) := d° N (CS, PS) for WGD and F(G):=F T (PS),
d s (P,G):=d T s (CS,PS), d QN (P,G) :=d T QN (CS,PS) for WGT. Next, we define scalar
functions (19) to solve the problem (17) for WGD and WGT:
and
H D () = a, <(v) + « 2 •(<(•,•))
H T e = r 1 d T s (;)+y 2 (dU;))
Having Hd(PS) and Ht(PS) we can combine these criteria (like in (19)) or set some threshold
values and select the most matched pattern situation to the current one.
An example of using the presented approach to find the most matched pattern decision
situation to current one is presented in the Fig. 9 and in the Table 4. Results of calculations
H D (PS) are presented for each PS e PDSS = {PS V ...,PS S } . Only function ff {CS) (n) = SDl
( ff (PS) («) f° r pattern PS) is used from WGD to compute nodes quantitative similarity (see
section 3.3.1) because all units have the same type. Thus, vector v(WGD(CS),WGD(PS)) of
matrices has one component v =\v..(Y)l Ar , IAr .. Function f A D(CS) M describes
coordinates of node n (leftlower cell has coordinates (1,1)). The norm from (14) has the form
f o 2 y/ 2
of:
: \\ff(i)ff(j)\
p=i
I /v(0 /£c/)
and it describes the geometric distance
between nodes ieNGD(PS) and 7 gNgd(cs). Let us note that for weights a x  0, cc 2 \ value in
Table 4 (for the row PS?) describes d^ N (CS, PS t ) and for a x \, a 2 = describes
ds(CS,PS t ) . The best matched PS to CS is PS 2 (taking into account d D s and d° N ).
The process of optimal selection of weights can be organized as follows: we build a learning
set {CSi.PDSS^^i^.^is and for different values of weights experts estimate whether, in their
subjective opinion, CSj is similar to PS*ePDSSj determined from the procedure.
Combination of weight values, which are indicated by majority of experts is the optimal
combination.
314
Automation and Robotics
o j^ _o o_ 9._°_ _2__2__ 5._2__
o o_ o_ o_ j>_ o_ _o__°__ _o_ 2__
oo oo oooo o o
PS,
PSb
PS
7
PS 3
...
...
...
Fig.9. Current situation CS with graph GD(CS) and eight pattern situations PSi (z=l,...,8)
with graphs GD(PSj) describing structure of units deployment. Patterns 15, 26, 37 and 4!
have the same structure but cells for patterns 5,.. ,8 have a greater size than for patterns
1,...,4
Pattern
Weights (ai; a?)
PS,
(0;D
(0.33; 0.67)
(0.5; 0.5)
(0.67; 0.33)
(i;0)
PS!
0.094
0.283
0.463
0.800
1.527
PS 2
0.370
0.283
0.593
0.870
1.504
PS 3
0.478
0.157
0.360
0.726
1.254
PS 4
0.233
0.176
0.467
0.827
1.527
PS 5
0.474
0.120
0.461
0.824
1.527
PS 6
0.706
0.032
0.378
0.761
1.504
PS 7
0.63
0.070
0.279
0.631
1.254
PS 8
0.508
0.047
0.415
0.793
1.527
Table 4. Values of scalar function Ho(PSi) combining structural (weight a\) and quantitative
(weight ai) similarity measures between GD(CS) and GD(PSj) from Fig.9. The best
(maximal) value in the columns are denoted in bold
4. Automatization of march process
4.1 Introduction
The automata for march executes two main processes (Tarapata, 2007c): march planning
process and direct march control. The march planning process relating to the automata
includes the determination of: march organization (unit order in march column, count and
place of stops and rests), paths for units and detailed march schedule for each unit in the
column. The direct march control process contains such phases like command, reporting
and reaction to fault situations during the march simulation. The automata is implemented
in the ADA language and it represents a commander of battalion level (the lowest level of
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 31 5
trainees is brigade level). It is a component of distributed interactive simulation system
SBOTSS "Zlocien" for CAX (Computer Assisted Exercises) (Najgebauer, 2004).
4.2 The march planning process
4.2.1 Description of the problem
The march planning process relating to the automata contains the determination of such
elements as: march organization (units order in march column, count and place of stops),
paths for units and detailed march schedule for each unit in the column. Algorithms, which
carry out the decision planning process described below, are presented in the section 4.4.
The decision process for march starts in the moment t, when the battalion id receives the
march order SO {id, t) from a superior (brigade) unit. Structure of the SO {id, t) is as follows:
SO{id,t) = (t (id,t), t s (id,t), MD{id,t)) (22)
where: SO{id, t)  superior order to march for battalion id; t {id,t)  readiness time for the
unit id; t s (id,t) ~ starting time of the march for the unit id; MD{id,t)  detailed description of
march order. Definition of the MD{id) (we omit t) is as follows:
MD{id) = U{id\D{id\ RP{id\IP{id) = (in p {id),it p (idj) __\ (23)
where: S{id),D{id)~ source and destination areas for id, respectively; RP{id)  rest area for
the id unit (after twentyfourhours of march), optional; IP{id)  vector of checkpoints for the
id unit (march route must cross these points), in v {id)  the pth checkpoint, in {id) eW l uW 2 ,
in\{id)=PS{id) is the starting point of the march (at this point the head of the march column is
formed) and it is required, other checkpoints are optional, it p {id)  time of achieving the /?th
checkpoint (optional); MP  number of checkpoints. After the id unit (battalion) receives the
brigade commander's order to march, the decision automata starts planning the realization
of this task. Taking into account SO{id,t), for each unit id' (of company level and
equivalent) directly subordinate to id the march order, MDS{id') is determined as follows:
MDS{id r ) = (S(id'),D(id% PS{id r ),PD{id r ),RP{id r )^{id\S{id r ),D{id r ))) (24)
where: S{id } ),D{id } ) source and destination areas for id', respectively, S{id')cz S{id),
D{id ') c D{id) ) RP{id')  rest area for the id' unit (after twentyfourhours of march),
RP{id') c RP{id) , optional parameter; PS{id')  starting point for the id' unit, the same for all
id'eid and PS{id ') = in {id) eW uW ) PD{id')  ending point of the march for the id' unit, the
same for all id'eid and PD{id r ) eW kjW ) ju{id\S,D)  the route for the unit id' from the
region S{id')=S to region D{id')=D, p(M\S,D) = (w(id\m),v(id\m)) m= l , w(id\m)~
the rath node on the path for id', w{id\m)eW x \jW 2 , S,Dc:WiuW2 and
w{id\\)eS ,w(id\LW{ju{id\S,D)))eD; LW(ju(id', S, D))  number of nodes (squares or
crossroads) on the path ju(id',S,D) for id' unit; v{id\m)~ velocity of the id' unit on the arc
316 Automation and Robotics
starting in the rath node. It is important to note that path ju(id\S,D) may consist of
sequences of nodes from Zi(t) and 7,i(t) (when we accept descending from the road on the
squares (if it is possible) and vice versa).
4.2.2 March organization determination
March organization includes the determination of such elements as: number of columns,
order of units in march columns and number and place of stops.
Number (#) of columns results from tactical rules and depends on the tactical level of the
unit: for the battalion level #columns=l, for the brigade level #columns=lK3; for the division
level #columns=3^5. Order of units in march column results from tactical rules as well
(algorithm Units_Order_In_March_Column_Determ(id') / see Table 6). Number of stops
c
Mops
(id) is calculated as follows (algorithm Number_of_Stops_Determ(id') / see Table 6):
s (id) = max<
(t D (id, t)  t s (id, t)  1 (id)) • v avg (id)  L path (id)
v avg (id){t stop (id) + As)
,0 ( 25 )
where: t (id J) ~ demanded ending time of the march for the id unit, t (id,t) ~ starting time
of the march for the id unit (like in (22)), t D (id,t) > t s (id,t) >0, t rest (id)~ duration time of the
rest for the id unit, v av (id)  average march velocity for the id unit, L ath (id) length of the
path determined for the id unit (in km), t stop (id)  duration time of the stop for the id unit,
As  time interval between stops. In practice, values of parameters are as follows:
t^W&th v avg (id)c [30^40] km/h, ^(w/)«lh, As e[3,4] h.
Place of stops are fixed after path determination and algorithm Place_Of_Stops_Determ(id')
(see Table 6) takes into account c stops (id) and the FCam function (see Table 1) to find optimal
positions of stops.
4.2.3 Detailed march schedule determination
Detailed movement schedule for id' unit is defined as follows:
H(id \t ) = (S, D, ju(id \ S, D), T(id \ S, D)} (26)
where: to  starting moment of schedule realization; T(id\S,D)  vector of moments of
achieving nodes on the path, T(id\S,D) = (t(id\m)) — , t(id\m)  moment of
achieving the rath node on the path,
*ca* ^ * J^L(w(id\j\w(id\j + \)) m ,
t(id\m) = t +2^— — — \ l/ )
j=\ v(id ,7)
and L(w(id ',]) ,w(id r ,j+l)) describes geometric distance between the;th and the (/+l)st nodes
on the path, LW(u(id\S,D) number of nodes on the path for id' unit. After determining
MDS(id') for each unit id' subordinates to battalion id, the order is sent by automata to each
of the id' units. The idea of determining march route for the unit id is presented in the Fig.10.
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 31 7
Fig.10. An example of a march route (path) for three units id'eid (filled squares) from the S
source area to the D destination area (dots represent crossroads from a digital map). We
have three checkpoints: Pi=PS, P2 and P3=PD (the path for all units must follow these
points). Pi is the starting point of the march (in this point the head of the march column
consisting of three units is formed), P3 is the ending point of the march (at this point the
march column is resolved), P2 is the intermediate point of the march. The path between Pi
and P3 is common for all units, however each unit has its own path from subarea of S to Pi
and from P3 to subarea of D.
In general, the automata uses two categories of criteria for synchronous movement
scheduling of the K object (unit) columns. To simplify further considerations, let unit id be
equivalent to the kth column, k=l,...,K, that is k = id . Moreover, let us accept following
descriptions: I k (s k ,t k ) = I k = ( i°(k) = s k , i\k),...,i r (k),..., i Rk (k) = t k )  vector of nodes describing
path for the kth object, s k eS,t k e D , f (k)  the rth node on the path for the kth object,
r r (k)~ time instance of achieving node f(k) by the head of the kth object, v, , r+l
velocity of the kth object on the arc (i r (k),i r+l (k)) of its path, d,, ,. +1  terrain distance
V / i (k),i (k)
between the graph nodes i r (k) and i r+l (k) , Rk  number of arcs belonging to the path I k .
The first category of criteria is time of movement of K objects with two basic measures of
this category:
max r
ke{l,...,K}
'(*)
2y<«
(28), (29)
The second category is "distance" between times of achieving alignment points by all of K
objects. We can define three main measures of this category:
p=\ k=\
rAk)
or mm max
pe{l,...,MP} ks{l,...,K
(*r *■,(*))
Ilk;
p=\ k=\
M\
(30), (31), (32)
where: r (k) moment of achieving the pth alignment node (in p (id) from (23)),
T p (k) = T°(k) +
■'(*)/*'(*)
r p (k) = re{l,...,R t } o in p (k) = f(k), T ' p
rs{0,...,R k l}
r<r p {k)
 max t„ (k) ,
ke{l,...,K} pV J
318 Automation and Robotics
1 K
T av g _ — y^ ^ Taking into account that unit id is equivalent to the kth column we can
K jt=i
write as follows: Vr „ r+1 „ =v(A:,r), f(k) = w(k,r), d rns r+Ul , =L(w(k,r\w(k,r + l)) .
i(k),i(k) v ' / v / v ? / f (k),i (k) V \ ' /> v ' //
One of the formulations of the optimization problem for movement synchronization of K
objects using measures (28)(32) can be defined as follows: for fixed paths h of each kth
object to determine such v +1 , r = 0,i?, 1, k = LK that
1 f{k)f (£)' K
NIP K
£2>r *,(*) ^ ( 33 )
p=\ k=\
with the constraints :
v.,.
:r (k),r l (k)
<v max (£), r = 0,R k l, k = l,K (34)
v fw/+lw >0, r = 0,^1, * = l,tf (35)
where v max (^) describes maximal velocity of the kth object resulting from its technical
properties.
4.2.4 Path determination for march
To find paths for units, modified shortest path algorithms (SPA) such as Dijkstra's, A*,
geometric SPA are used in SBOTSS "Zlocien" (Najgebauer, 2004). Geometric SPA
supplements two algorithms presented above (the hybrid shortest path algorithm is
obtained) and it is used in case the size of the network is large (default is 10000 nodes, but it
is a parameter set in a socalled calibrator of the simulation system (Antkiewicz et al., 2006)).
Modifications of mentioned algorithms deal with the following details: (a) paths
determination in different configurations  (al) from point (region) to point (region), (a2)
visiting selected points (regions), (a3) omitting selected points (regions, obstacles), (a4)
inside or outside selected region, (a5) offroads only, (a6) onroads only, (a7) combined on
and offroads and others; (b) if we do not set the region inside where we want to find the
path then the algorithm itself, iteratively determines the rectangular region, which is based
on a line linking the beginning and end points (nodes) of movement, to minimize
computational time; (c) if we want to find an onroad path only, and there are no nodes of
the road network inside the intermediate squares, then the algorithm may optionally find
crossroads (nodes of the road network), which are nearest to squares inside that the path
must cross. Detailed description of the movement planning algorithms used in SBOTSS
" Zlocien" is presented in (Tarapata, 2004a).
In general, modelling and optimization of multiconvoy redeployment (for simultaneous
movement of many columns) are very complicated processes. Complexity of these processes
depends on the following conditions: number of convoys (the greater the number of
convoys the more complicated is the scheduling of redeployment); number of objects in each
convoy (the longer the convoy the more complicated is the scheduling of redeployment);
Have convoys been redeployed simultaneously? Can convoys be destroyed during
redeployment? Can the terrainbased network be destroyed during redeployment? Have
convoys been redeployed through disjoint routes? Have convoys achieved selected
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 31 9
positions (nodes) at a fixed time? Do convoys have to start at the same time? Have convoys
determined any action strips for moving? Can convoys be joined and separated during
redeployment? Do convoys have to cross through fixed nodes?, etc. Some of these aspects
are considered in section 4.2.3 and in the papers: (Benton et al., 1995; Cassandras et al. 1995;
Karr et al, 1995; Kreitzberg et al, 1990; Logan & Sloman, 1997; Logan, 1997; Longtin &
Megherbi, 1995; Mohn, 1994; Pai & Reissell, 1994; Schrijver & Seymour, 1992; Rajput & Karr,
1994; Tarapata, 1999; 2000; 2001; 2003; 2004a; 2005).
4.3 The direct march control
4.3.1 Identifying fault situations during a march simulation and automata reactions
The direct march control process contains such phases as: command, reporting and reaction
to fault situations during march simulation (Tarapata, 2007c). Let us remember that
automata replaces battalion commander and manages subordinate units (company or/ and
platoons and equivalent).
The automata for march react to some fault situations during the march simulation
presented in the Table 5.
Fault situation during march
simulation
Automata reaction
Current velocity of a subordinate
unit differs from scheduled velocity
 If the unit is at the head of the column and it does
not move at planned velocity then increase the
velocity (in case of delay) or decrease it (in case of
acceleration);
 If the unit is not at the head of column then adapt
velocity to velocity of the preceding unit in the
column
Achieving critical fuel level in one of
the subordinate units
Reporting to automatic commander. Attempt to
refuel at the next stop or refuel as soon as possible
Detection of an opponent unit
If opponent forces are overwhelming (opponent
combat potential is greater then a threshold value)
and distance between own and the opponent units is
relatively small then unit is to be stopped, make
defence and report to commander. Otherwise, report
to commander only
Detection of a minefield
stop and report to commander
Loss of capability to carry out the
march (destruction of part of the
march route (e.g. bridge, river
crossing) or other cause of
impassability)
 If part of the route is impassable due to destruction
of part of the march route then attempt to find a
detour. Report to commander;
 If there is another cause of impassability then make
defence and report to commander
Contamination of part of the march
route or subordinate unit
Report to commander. If degree of contamination is
low then run chemical defence and continue march,
otherwise try to exit from the contaminated area
Table 5. Fault situations during march simulation and automata reactions
320 Automation and Robotics
Situations, which require reporting to the superior of the battalion, are as follows: achieving
checkpoints, stop area or rest area; slowing down velocity, which causes delays;
encountering contamination; encountering a minefield; achieving a fuel level of 75% and
50% of the normative level; loss capability of carrying out the march (reporting cause of
capability loss); detection of opponent units. A detailed description of movement
synchronization is presented in section 4.3.2.
4.3.2 Velocity calculation
We "see" the unit on the road twofold: (1) as occupying arcs (part of the roads) and nodes
(crossroads) of the Zi network, (2) as sequence of squares of the Z\ network by which the arc
cross. In the (1) case we move the head and the tail of the column and we register arcs of the
Z2 in which the head and the tail are located with degrees of crossing these arcs. In the
(2) case we locate the head and the tail of the column on small squares and we move the
"snake" of small squares (from the head to the tail). Movement of the unit on the road
(deployed in the column) is done by determining the sequence of nodes (crossroads) and
arcs (part of the roads) of the Z 2 network using algorithms presented in section 4.2 and then
we realize movement from crossroad to crossroad.
The important problem during simulation is to set the current velocity of the unit id.
Procedure of setting the velocity inside the ;th square taking into account two cases: (a)
when the unit id does not fight in the ;th square; (b) when the unit id fights in the ;th
square.
In the (a) case the current velocity v CU r(id, j) of the unit id in the ;th square is calculated as
follows:
v cur (id,j)=min{ v slowd (/</, j) ,Vdec(id,j)} (36)
where: v slowd (id,j)~ maximal velocity of the unit id in the ;th square taking into account
topographical conditions,
v slowd (id J) = v max (id) • FOP(id,m) (37)
v max
(id)  maximal possible velocity of the unit id resulting from technical parameters of the
vehicles belonging to this unit, v ™x • .^ _ m  n ^ , x t ZVeh(id)  set of vehicles belonging
peZVeh(id)
to the id unit, v tech (p)  maximal velocity of vehicle p (resulting from technical parameters),
TOP (id,*)  slowing down velocity function for the id unit in the ;th square, FOP(id,*) is
equal (3) or (5); Vdec(id, j)  velocity resulting from commander decision (equals v(id,j) in (27)).
If the unit id is a head of a column and it does not move with planned velocity
Vdec(id, j) then the velocity is increased (in case of delay) or decreased (in case of
acceleration). If the unit id is not at the head of column then velocity of the unit id is adapted
to velocity of the preceding unit in the column.
In the (b) case the current velocity v CU r(id, j) of the unit id in the ;th square is calculated as
follows:
v c Jid,j) = min{f(v s '^(id,»),U A ,U B ,dist),v dec (idJ)} ( 38 )
where: /(•,•,•,•)  function describing velocity in the square depending on v slowd (id,9),
potentials of the unit id of side A (IX a) and B (Ub) which fight, distance (dist) between
fighting sides.
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 321
Some results of velocity calculations in real scenario for brigade march are presented in the
Table 7.
4.3.3 Fuel consumption calculation
Fuel consumption FC(id, veh, u) on the u part of a path for the type of vehicle veh belonging
to the id unit is calculated as follows:
FC(id, veh, u) = FLen(u) • FCC(u, veh) • NFC ( veh "> . ^(id, veh)
(39)
where: FLen(u) describes the length of the u part of a path, FCC(u,veh)  fuel consumption
coefficient for the u part of a path and for vehicle type veh, NFC(veh)  normative average
fuel consumption for the veh type of vehicle (per 100km), N(id, veh)  number of vehicles of
veh type in the id unit. Fuel consumption coefficient FCC is calculated as follows:
FCC(u,veh)=(1.0+MTC(veh))*(1.0+ UC(u)) (40)
where MTC(veh) describes mechanicaltactical coefficient and UC(u)  utilization coefficient,
veheK_Veh resulting from logistic calculations.
4.4 Automata implementation
The automata are implemented in the Ada language and it represents a part of an automatic
commander on the battalion level (Antkiewicz et al., 2007). They realize their own tasks and
pass on tasks to subordinate units. Simulation objects and their methods are managed by
dedicated simulation kernel (extension of Ada language). Object methods are divided into
two sets: (1) nonsimulation methods  designed in order to set and get attributes values,
specific calculations and database operations; (2) simulation methods  prepared in order to
synchronous ("waitfor" methods) and asynchronous ("tell" methods) data sending.
Procedures implemented and used for decision planning and direct march control processes
are presented in the Table 6.
Procedures implemented and used for each
unit id'eid for the decision planning process
Procedures implemented and used for
each unit id'eid for the direct march
control process
Units_Order_In_March_Column_Determ(id')
Column _Length_Determ(id')
Number _of_Stops_Determ (id')
Place_Of_S tops_Determ (id ')
Ending_Point_PD_Determ (id')
March_Schedule_Determ(id')
Paths_Determ (id')
Paih_ S_To_PS_Determ(id')
Common_Path_PS_To_PD (id')
Paih_ PD_To_D_Determ(id')
Detailed_Schedule_Determ(id')
March_Simulation (id')
Simulate _Unit_Movement(id')
React_To_Fault_Situations(id')
Fuel_Consumption_Determ(id')
Adapt_March_Velocity(id')
Report _To_Commande? '(id')
Table 6. Procedures implemented and used for decision planning and direct march control
processes in the march automata
322
Automation and Robotics
4.5 Practical example
In this section a practical example of march planning and simulation is presented. In Fig.lla
initial tactical situation is shown. In our example 2 mechanized brigades (121BZ and 123BZ:
each of the brigades consists of 4 mechanized battalion x 4 mechanized companies) of the
blue side receive order to march.
VAjt. XX'£ T"
Blue
^R^K W
(b) (c)
Fig.ll. (a) Initial tactical situation, 4:00am: two mechanized brigades of the "blue" side
(121BZ and 123BZ) receive an order to march; (b) Location of the 121 BZ on the road,
5:50am; (c) Location of the 123 BZ on the road, 5:50am
In the superior order (22): destination area for 121 BZ and 123BZ is set to about 30 km to the
north of the northern edge of the location area of the red side; distance from source area S to
destination area D is equal about 110km; 5 checkpoints is set.
In the Fig.llb and Fig.llc location of 121BZ and 123BZ, respectively, after nearly 2 hours of
march are presented.
Initial redeploying of the blue side is presented in Fig.l2a. 121BZ is redeployed on the
northerneast of the blue force redeploying area. 123 BZ is redeployed on the south of 121
BZ. The location of 121BZ and 123BZ at 5.50am is shown in Fig.l2b.
Fig. 12. (a) Initial redeployment of the blue side, 4:00am; (b) Location of 121 BZ and 123 BZ,
5:50am
Presented in Table 7 are the average velocities between selected march checkpoints for
121BZ and 123BZ. Average march velocity is equal to about 30km/ h.
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 323
Unit
S=>P S
Ps=>Pd
Pd=>D
S=>D
121BZ
12.32
39.65
18.24
29.54
123BZ
14.07
27.84
22.57
24.65
Table 7. Average velocities between selected march checkpoints for 121BZ and 123BZ (in
km/h)
5. Conclusions
The models and methods described in the chapter are used in real simulation support
system for military operational training (Antkiewicz et al., 2007) and/ or can be used in
Computer Generated Forces systems. The presented methods and their implementations are
very promising in the context of Computer Assisted Exercises management and
effectiveness. By using, for example, decision automata on the battalion level we can save a
lot of time and training participants, so even very complex exercises can be organized and
carried out by analyzing and go through different scenarios of military conflicts. One of the
aspects of automatization of the decision processes  movement planning, synchronization
and simulation is essential not only in CGF systems. Simulation systems for military
trainings should have modules for management (planning, synchronization) multiobjects
movement. The quality of this management has an effect on accuracy, effectiveness and
other characteristics of simulated battlefield systems. A very important problem, which
deals with automatization of decision processes, is the calibration of simulation models of
complex processes (Antkiewicz et al., 2006; Dockery & Woodcock, 1993; Hoffmann, 2005). It
enables the tuning of these models. This process has an influence on one of the most
important features of simulation models as is adequateness.
6. Acknowledgement
This work was supported in part by the Military University of Technology in Warsaw under
Grant PBW571 and GWAD 604.
7. References
Almohamad H. & Duffuaa S. (1993): A Linear Programming Approach For The Weighted
Graph Matching Problem, IEEE Trans. Pattern Anal. Mach. Intelligence 15(5), 522
525.
Antkiewicz R., Najgebauer A. & Tarapata Z. (2003): The decision automata for command
and control simulation on the tactical level, Proceedings of the NATO Regional
Conference on Military Communication and Information Systems, 0710 October, Zegrze
(Poland) 2003, ISBN 8392012003 , (CDROM publication).
Antkiewicz R., Najgebauer A., Rulka J. & Tarapata Z. (2006): Calibration of simulation
models of selected battlefield processes, Proceedings of the 1st Military
Communication and Information Systems Conference, ISBN 8392012011, 18
19.09.2006, Gdynia (Poland).
324 Automation and Robotics
Antkiewicz R., Najgebauer A., Tarapata Z., Rulka J., Kulas W., Pierzchala D. & Wantoch
Rekowski R. (2007): The Automation of Combat Decision Processes in the
Simulation Based Operational Training Support System, Proceedings of the IEEE
Symposium on Computational Intelligence for Security and Defense Applications
(CISDA'07), 0105.04.2007, ISBN 1424406986, Honolulu (Hawaii).
Behnke S. (2003): Local Multiresolution Path Planning, In B. Browning, D. Polani, A.
Bonarini, and K. Yoshida (editors): RoboCup2003: Robot Soccer World Cup VII,
Lecture Notes in Computer Science 3020, Springer Verlag (2004), 332343.
Benton J.R., Iyengar S.S., Deng W., Brener N. & Subrahmanian V.S. (1995): Tactical route
planning: new algorithms for decomposing the map, Proceedings of the IEEE
International Conference on Tools for AI, 68 November, Herndon 1995, pp. 268277.
Blondel V., Gajardo A., Heymans M., Senellart P., Van Dooren P. (2004): A Measure Of
Similarity Between Graph Vertices: Applications To Synonym Extraction And Web
Searching. SIAM Review, vol.46(4), (2004), 647666.
Bunke H. (1997): On A Relation Between Graph Edit Distance And Maximum Common
Subgraph, Pattern Recognition Letters, vol. 18, (1997), 689694.
Bunke H. (2000): Graph Matching: Theoretical Foundations, Algorithms, And Applications,
in Proceedings Vision Interface 2000, Montreal, (2000), 8288.
Campbell C, Hull R., Root E., Jackson L. (1995): Route planning in CCTT, in Proceedings of
the 5th Conference on Computer Generated Forces and Behavioural Representation,
Technical Report, Institute for Simulation and Training, pp. 233244, 1995.
Cassandras C.G., Panayiotou C.G., Diehl G., Gong WB., Liu Z. & Zou C. (2000): Clustering
methods for multiresolution simulation modeling, Proceedings of the Conference on
Enabling Technology for Simulation Science, The International Society for Optical
Engineering, 2527 April, Orlando (USA) 2000, pp. 3748.
Champin P., Solnon Ch. (2003): Measuring The Similarity Of Labeled Graphs, Proc. 5th
International Conference on CaseBased Reasoning (ICCBR 2003), Lecture Notes in
Artificial Intelligence 2689, Springer Verlag, (2003), 8095.
Corps Battle Simulation (CBS) (2001): Version 1.6.0, Analyst's Guide, Volume 1, Ground,
U.S. Army Simulation, Training, and Instrumentation Command Orlando, Florida, June
2001.
Davis P.K., Bigelow J.H. & McEver J. (2000): Informing and calibrating a multiresolution
exploratory analysis model with high resolution simulation: the interdiction
problem as a case history, Proceedings of the 2000 Winter Simulation Conference, pp.
316325.
Dockery J. & Woodcock A.E.R. (1993): The Military Landscape, Mathematical Models of
Combat, Published by Woodhead Publishing Ltd., Cambridge, England, 1993.
Eschenauer H., Koski J. & Osyczka A. (1990): Multicriteria Design Optimization, Springer
Verlag, BerlinHeidelbergNew York, (1990).
Farin D., With P., Effelsberg W. (2003): Recognition of UserDefined Video Object Models
using Weighted Graph Homomorphisms, Proc. Image and Video Communications and
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 325
Processing (IV CP 2003), Proc. SPIE 5022, Bhaskaran Vasudev, T. Russell Hsing,
Andrew G. Tescher, and Touradj Ebrahimi, ed., (2003), 542553.
Henninger A.E., Gonzalez A.J., Georgipoulos M., DeMara R.F. (2000): Modeling Semi
Automated Forces with Neural Networks: Performance Improvement through a
Modular Approach, The Ninth Conference on Computer Generated Forces and Behavioral
Representation Proceedings, Orlando, FL, 2000.
Hofmann H.W. & Hofmann M. (2000): On the Development of Command & Control
Modules for Combat Simulation Models on Battalion down to Single Item Level. In:
Proceedings of the NATO/RTO Information Systems Technology Panel (1ST) Symposium
"New Information Processing Techniques for Military Systems". NATO AC/ 329 (IST
017) TP/8, Istanbul, Turkey, 911 Oct. 2000, pp. 8596.
Hofmann M. (2005): On the Complexity of Parameter Calibration in Simulation Models,
JDMS, The Society for Modeling and Simulation International, Volume 2, Issue 4,
pp.217226, October 2005.
James J., Sayrs B., Benton J. & Subrahmanian V.S. (1999): Uncertainty management: keeping
battlespace visualization honest, ATRIP Conference Proceedings, February 1999,
http://citeseer.nj.nec.com/386770.html.
JTLS (1988): The Analyst Guide, Joint Theater Level Simulation (JTLS), Version 1.65, Modern
Aids to Planning Program (MAPP), Force Structure and Assessment Directorate (J8),
Joint Staff, The Pentagon, September 1988.
Kambhampati S. & Davis L.S. (1986): Multiresolution Path Planning for Mobile Robots, IEEE
Journal of Robotics and Automation, Vol. RA2, No. 3 (1986), 135145.
Karr C.R., Craft M.A. & Cisneros J.E. (1995): Dynamic obstacle avoidance, Proceedings of the
Conference on Distributed Interactive Simulation Systems for Simulation and Training in
the Aerospace Environment, The International Society for Optical Engineering, 1920
April, Orlando (USA) 1995, pp. 195219.
Kleinberg J. (1999): Authoritative Sources In Hyperlinked Environment, Journal of the ACM,
vol.46(5), (1999), 604632.
Korf R.E. (1999): Artificial intelligence search algorithms, in Algorithms Theory Computation
Handbook, Boca Raton, FL: CRC Press (1999).
Kreitzberg T., Barragy T. & Nevin B. (1990): Tactical movement analyzer: a battlefield
mobility tool, Proceedings of the 4th Join Tactical Fusion Symposium, Laurel, 1990.
Kriegel H.P. & Schonauer S. (2003): Similarity Search in Structured Data, Proc. 5th Int. Conf.
on Data Warehousing and Knowledge Discovery (DaWaK'03), Prague, Czech Republic,
2003, in: Lecture Notes in Computer Science (LNCS), vol.2737, (2003), 309319.
LaValle S. (2006): Planning algorithms, Cambridge University Press, 2006.
Lee J.J. & Fishwick P. A. (1995): Simulationbased realtime decision making for route
planning, Proceedings of Winter Simulation Conference, 1995, 10871095.
Lee J.J. (1996): A SimulationBased Approach for Decision Making and Route Planning, PhD
Thesis, University of Florida, August 1996.
326 Automation and Robotics
Logan B. & Sloman A. (1997): Agent route planning in complex terrains, Technical Report
CSRP9730, University of Birmingham, School of Computer Science, Birmingham
1997.
Logan B. (1997): Route planning with ordered constraints, Proceedings of the 16th Workshop of
the UK Planning and Scheduling Special Interest Group, 1718 December, Durham
(UK), 1997.
Longtin M. & Megherbi D. (1995): Concealed routes in ModSAF, in Proceedings of the 5th
Conference on Computer Generated Forces and Behavioural Representation, Technical
Report, Institute for Simulation and Training, pp. 305314, 1995.
Melnik S., GarciaMolina H. & Rahm E. (2002): Similarity Flooding: A Versatile Graph
Matching Algorithm And Its Application To Schema Matching, Proceedings of the
18th International Conference on Data Engineering, San Jose, California, (2002), 117
128.
Mitchell J.S.B. (1999): Geometric shortest paths and network optimization, in J.R. Sack and J.
Urrutia: Handbook of Computational Geometry, Elsevier Science Publishers, B.V.
NorthHolland, Amsterdam 1999.
Mohn H. (1994): Implementation Of A Tactical Mission Planner For Command And Control
Of Computer Generated Forces In ModSaf, Master's Thesis, Monterey, CA: Naval
Postgraduate School.
Najgebauer A. (1999): Decision Support Systems for Conflict Situations. Models, Methods
and the Interactive Simulation Environments (in Polish). Ed. Biuletyn WAT, Warsaw
1999, Poland (294 p.), ISBN 8390862069.
Najgebauer A. (2004): Polish Initiatives in M&S and Training. Simulation Based Operational
Training Support System (SBOTSS) Zlocien, Proceedings of the ITEC'2004, London,
UK, April 2022, 2004.
Pai D.K., Reissell L.M. (1994): Multiresolution rough terrain motion planning, Department of
Computer Sciences, University of British Columbia, Technical Report TR 9433,
Vancouver 1994.
Petty M.D. (1995): Computer generated forces in Distributed Interactive Simulation,
Proceedings of the Conference on Distributed Interactive Simulation Systems for
Simulation and Training in the Aerospace Environment, The International Society for
Optical Engineering, 1920 April, Orlando (USA) 1995, pp. 251280.
Rajput S. & Karr C. (1994): Unit Route Planning, Technical Report ISTTR9442, Institute for
Simulation and Training, Orlando (USA) 1994.
Robinson S. (2004): The Ongoing Search for Efficient Web Search Algorithms, SIAM News,
vol.37(9), (2004).
Schiavone G.A., Nelson R.S. & Hardis K.C. (1995): Interoperability issues for terrain
databases in distributed interactive simulation, Proceedings of the Conference on
Distributed Interactive Simulation Systems for Simulation and Training in the Aerospace
Environment, The International Society for Optical Engineering, 1920 April,
Orlando (USA) 1995, pp. 89120.
Automatization of Decision Processes in Conflict Situations: Modelling, Simulation and Optimization 327
Schiavone G.A., Nelson R.S. & Hardis K.C. (2000): Two surface simplification algorithms for
polygonal terrain with integrated road features, Proceedings of the Conference on
Enabling Technology for Simulation Science, The International Society for Optical
Engineering, 2527 April, Orlando (USA) 2000, pp. 221229.
Schrijver A. & Seymour P. (1992): Disjoint paths in a planar graph  a general theorem,
SIAM Journal of Discrete Mathematics 5 (1992), pp. 112116.
Senellart P. & Blondel V. (2003): Automatic Discovery Of Similar Words, in: Survey of Text
Mining, SpringerVerlag Berlin Heidelberg New York (2003).
Tarapata Z. (1999): Simulation method of aiding and estimation of transportation columns
movement planning in stochastic environment, Proceedings of the 13th European
Simulation Multiconference, The Society For Computer Simulation International, 01
04 June, Warsaw 1999, pp. 613619.
Tarapata Z. (2000): Some aspects of multiconvoy redeployment modelling and simulation,
TechNet Europe 2000  Proceedings of the 21st AFCEA Europe Symposium & Exposition,
1820 October, Prague (Czech Republic), 2000 (CD publication).
Tarapata Z. (2001): Modelling, optimisation and simulation of groups movement according
to group pattern in multiresolution terrainbased grid network, Proceedings of The
NATO Regional Conference on Military Communication and Information Systems, 1012
October, Zegrze (Poland) 2001, vol.1, 241251.
Tarapata Z. (2003): Military route planning in battlefield simulation: effectiveness problems
and potential solutions, Journal ofTelecomm. and Information Technology, N°° 4 (2003),
pp. 4756.
Tarapata Z. (2004a): Models and methods of movement planning and simulation in
simulation aided system for operational training, Proceedings of the 6th NATO
Regional Conference on Military Communication and Information Systems, 0608
October, Zegrze (Poland) 2004, pp. 152161.
Tarapata Z. (2004b): Decomposition algorithm for finding shortest paths in grid networks of
large size, Proceedings of the 15th International Conference on Systems Science, 710
September, Wroclaw (Poland) 2004, vol.III, pp. 209216.
Tarapata Z. (2005): Synchronization method of many objects movement in Computer
Generated Forces systems, Proceedings of the 7th NATO Regional Conference on
Military Communication and Information Systems, 0405 October, Zegrze (Poland)
2005, pp. 9399.
Tarapata Z. (2007a): Selected multicriteria shortest path problems: an analysis of complexity,
models and adaptation of standard algorithms, International Journal of Applied
Mathematics and Computer Science, Vol.17, No.2 (2007), 269287.
Tarapata Z. (2007b): Multicriteria weighted graphs similarity and its application for decision
situation pattern matching problem, Proceedings of the 13th IEEE/IF AC International
Conference on Methods and Models in Automation and Robotics, ISBN 978837518033
6, 2730 August 2007, Szczecin, Poland, 11491155.
Tarapata Z. (2007c): The decision automata for manoeuvre planning and control in
simulation aided system for operational training, Proceedings of the Military
328 Automation and Robotics
Communications and Information Systems Conference MCC2007, ISBN 9783934401
167, 2526 September 2007, Bonn, Germany (CD publication).
Umeyama S. (1988): An Eigen Decomposition Approach To Weighted Graph Matching
Problems. IEEE Trans. Pattern Analysis and Machine Intelligence, vol.l0(5), (1988),
695703.
Undeger C., Polat F. & Ipekkan Z. (2001): Realtime edge follow: a new paradigm to real
time path search, Annual European GameOn Conference, London, UK, Nov.30Dec.l,
2001.
19
Fuzzy Knowledge Representation
Using Probability Measures of Fuzzy Events
Anna WalaszekBabiszewska
Opole University of Technology
Poland
1. Introduction
The concepts of Soft Computing introduced by Lotfi A. Zadeh in 1991 has integrated different
methodologies and approaches, as: fuzzy set theory, fuzzy logic, approximate reasoning,
linguistic expression of knowledge, probabilistic reasoning, and others for solving problems
of complex systems in the way similar to human perception, recognition and solving
problem methods. Linguistic fuzzy modelling gives the formal, mathematical instruments
for expressing human knowledge described in natural language. Probability of fuzzy
meanings of linguistic variables determines a frequency of the occurrence the imprecisely
expressed events.
This work presents the methods of applications linguistic modelling and probability
measures of fuzzy events for creating models compatible to the features of real systems, and
more flexible than traditional rulebased models derived from linguistic knowledge.
In Section 2. we remind the notions of a linguistic variable and a probability of fuzzy events,
formulated by Zadeh, which have become fundamental for the development of fuzzy
systems. We define probability distributions of a linguistic variable and a linguistic vector
as well as a mean fuzzy value (a mean fuzzy set) of the linguistic variable. The conditional
probability of fuzzy events will be the base for the inference procedure.
Section 3. shows an exemplary probabilistic modelling for the characteristics representing
features of particles in a certain population, formulated in fuzzy categories.
The created knowledge representation states a collection of weighted rules (Section 4.)
Weights of rules represent probabilities of fuzzy events of input and output system
variables. Construction of fuzzy models is presented for different stochastic systems. The
weights are involved in the inference procedures.
2. Linguistic and probabilistic modelling  basic definitions and concepts
2.1 Linguistic variable
Linguistic fuzzy modelling with a linguistic knowledge representation gives us the formal,
mathematical way for expressing the human linguistic perception of real world. A linguistic
variable is the main notion in such modelling. The variable whose values are words, can be
defined by the quadruplet <X,L(X),U,M X >, where X means the name of the variable, L(X) is
a set of linguistic values (words) which X takes, LI is an universe of discourse, and M is a
330
Automation and Robotics
semantic function, that assigns the fuzzy meaning (fuzzy subsets A\, i=l,...,I in U) to each
linguistic value from L(X) (Zadeh, 1975).
As an example let us consider a linguistic variable X=diameter of particles, which takes the
linguistic values L(X)={fine, middle size, coarse}. A semantic function M associates fuzzy
meanings (fuzzy sets) A\, i=l,2,3 to each linguistic value. Fuzzy sets are given by
membership functions jU A (u) determined in the universe of discourse U cz R (an interval of
real numbers), as follows:
1, we [0,0.2)
Ma\ ( u ) = ) 0.35 w
0.15
, we [0.2,0.35]
(1)
Ma? (") :
w0.2
, K e [0.2, 0.35)
0.15
1, we [0.35, 0.65]
0.8 m
(2)
0.15
, we (0.65, 0.8]
Max ( u ) z
0.65w
0.15
1, we [0.8,1]
where An fine, A?, middle size, A3: coarse.
we [0.65,0.8)
(3)
2.2 Probability of fuzzy events and distributions of linguistic variables
A fuzzy event A, in compliance with Zadeh' s definition, is a fuzzy subset A = {(//^(w), w)} in
the elementary events domain (U,Cl) , with the membership function ju A (u) e[0,l]
measurable in Boreal sense (Zadeh, 1968). In another notation, a fuzzy event can be
expressed as A= ^(// y4 (w)/w) , where the sum sign is considered as set character, not
ucU
arithmetical.
Let p be the probability function, which assigns to each Borel set in the domain
U = {u x ,...u N } the real number pe[0,l]. A probability P(A) of a fuzzy event A is defined in
the way:
P(A) = ^p(u)jLi A (u)
(4)
ueU
where p(u) e [0,1] is a probability function in (U,Q).
If the domain U is infinite, and f(u) is a probability density function in (U,Q), then a
probability P(A) of a fuzzy event A can be calculated by the following integral:
P(A)= J jU A (u)f(u)du
(5)
ueU
Fuzzy Knowledge Representation Using Probability Measures of Fuzzy Events 331
Probability values of fuzzy events, calculated according to (4) and (5) are real numbers,
P(A) s[0,l].
Let fuzzy subsets A i9 i = I,..., I of the linguistic variable X are defined by their membership
/
functions ju A . (u) e [0,1] in such way, that for every u gU , the relationship ^ ju A .(u) = 1 is
fulfilling. Then, the set of probabilities {P(A i )},i = l,..,I calculated for fuzzy subsets
A t , i = 1,..., / according to (4) or (5) and fulfilling the relation
/
J>(4) = 1 (6)
i=\
states a probability distribution of the linguistic variable X.
A mean fuzzy value of the linguistic random variable X, signed as A , in a probability
distribution P(A t ), i=l,...,I given above, is a fuzzy set with the membership function
defined as follows:
ju_ (u) = P(A 1 )Ma 1 («) +  + P(4) MAl (u), VueU (7)
A
The mean fuzzy value is the convex combination fuzzy set (Kacprzyk, 1986). It will be used
in the aggregation procedure (Section 4).
For the linguistic variable whose fuzzy meanings of linguistic values are given by (1)  (3),
assume that probability density function is constant over the domain 11= [0, 1], f(u)=l.
Probability of fuzzy events Ai: fine, A?, middle size, A3: coarse can be calculated by the
integrals
0.35
P(A X )= \ jU Al (u)f(u)du = 0.275, (8)
0.8
P(A 2 )= jju A2 (u)f(u)du = 0.450 , (9)
0.2
1
P(A 3 )= [jU A3 (u)f(u)du = 0.275. (10)
0.65
The calculated probability values fulfil (6), so the mean fuzzy value of events Ai,Ai, A3 can
be calculated according to the dependence (7).
Let us consider, as it is usually assumed in industrial practice, that for disjoint intervals
Au m = a m , m = 1,...,M the empirical probability is constant and equal to the quotient
p(Au m ) = P(u e Au m ) = 3*. (11)
n
332 Automation and Robotics
where n m is the number of particles whose a feature x takes the values from the proper
intervals, and n is the total number of particles, n= /n m • Fuzzy sets A i9 i = l 9 ... 9 I
m=\,...,M
representing linguistic values of a linguistic variable X can be determined on the disjoint
intervals a m as follows
4= y Yj^A i (a m )la m (12)
m=\,...,M
where the membership functions fulfill the condition > ju A . (a m ) = 1, \/a m e U .
Probabilities of the events (12) can be expressed by the relationship
P(A)= ^MAiMPm (13)
m=l,...,M
where p m = P(u <e a m ) . If the set of probabilities {P(A t )} of fuzzy events, calculated
according to (12) and (13) is fulfilling the relationship > P(A t ) = 1 then it states a
z=l,...,/
probability distribution of the linguistic variable X.
Let us consider two linguistic variables: <X,L(X) / U / M X > and <Y,L(Y),V,M y >, where X means
the name of the input (reason) variable, Y is the name of the output (result) variable of a
SISO system, L(X) and L(Y) are sets of linguistic values, U cz R and V cz R are universes of
discourse of particular variables, M x , M y are semantic functions, that assign fuzzy meaning
(fuzzy subsets A i ,i = l,...,I in U cz R and B ,y = 1,..., Jin V cz 7^ ) to each linguistic value
from L(X) and L(Y), respectively.
Fuzzy sets A t ,i = l,...,I and B j,j = 1,..., J state the numeric descriptions of particular
linguistic values of variables X and Y, respectively. Let fuzzy sets are defined by
membership functions in the way
/
ju Ai (u)e [0,1] ,/=!,... ,1 and ^//^ (V) = l,Vi/ e £/; (14)
// 5 . (v) g [0, 1] , ,;=1,...,J and ^jU B . (v) = 1, Vv e K . (15)
7=1
A new term set of a linguistic vector (X,Y) can be created in the space L(X)xL(Y) by the
numeric description jU A . xB .( u > v ) i n the universe UxV . The membership function
MaxB ■ ( u > v ) i s a Borel function, which can be defined as a tnorm
MAfxBj ( w ' v ) = T (MA i ( u lMB J ( v )) ( 16 )
e.g., as a product tnorm ju A . xBj (u,v) =ju A .(u)ju Bj (v) .
Fuzzy Knowledge Representation Using Probability Measures of Fuzzy Events 333
A set of probability values {P(A t x5)}, of fuzzy events (fuzzy relations) A i *Bj, z=l,...,I,
7=1,. . .,/ can be calculated using the basic definition (4), as follows
P(A t xBj)= J^p(u,v) MA . xBj (u,v) (17)
(u,v)gUxV
where p(u, v) e [0,1] is a joint probability function.
If the set of probabilities of fuzzy events {P(A t X B ■)} fulfils the relationship
£]TP(4x5 y ) = l (18)
/=1 y=l
then, it states a joint probability distribution P(X,Y) of the linguistic vector variables (X,Y).
The marginal probability distributions P(X) = {P(A t )},i = 1,...,/ , and P(Y) = {P(Bj )},;'=!,... ,/
can be calculated for particular linguistic variables, as follows:
J
P(4) = ^P(4x5 y ) (19)
7=1
/
P(Bj) = Y,P(AxBj) (20)
i=\
The marginal distributions P(X) and P(Y) defined above are normalized:
/ J
J>(4) = i, 2 P( ^ ) = 1 (21)
i=l 7=1
Conditional probability distributions of particular linguistic variables can be derived from
the joint probability distribution P(X,Y) given by (17) and a marginal probability
distributions (19) or (20). The conditional probability distribution P(Y/X) of the linguistic
variable Y, under the condition that X takes fuzzy values A u i = I,..., I , is a set of probability
values P(Y I X) = {P(Bj I A t )} ,j=l, . . .,/; i=const, calculated as follows:
P(Bj I A t ) = P(A t xBj)/ P(A t ) , j=l, . . .,/; i=const (22)
Taking into account the normalization of probability distributions (see (18) and (21)), the
total probability of the result B • can be calculated, similarly to Bayes 7 formula, and
assuming, that the conditional probabilities P(Bj J A t ) , i=l,...,I, calculated under the
condition of the reasons A t are known (WalaszekBabiszewska, 2008):
i
PiBj^^PiBj/AtWAi). (23)
i=\
Let us note, that fuzzy sets A i9 i = !,...,! are not disjoint in U.
334 Automation and Robotics
3. Exemplary linguistic and probabilistic modelling
3.1 Particle characteristics as results of measurements
In chemical and biochemical research, in many industrial processes such as mineral
preparation processes or in numerous food processes, the material to be prepared consists of
a population of different types of particles.
There are basic characteristics of material utilised by process engineers and automation
engineers:
• a characteristic of the size composition presenting portions of particles belonging to
different size fractions,
• a densimetric characteristic presenting portions of particles belonging to different
density fractions,
• a characteristic of tested chemical components.
The two first characteristics are often considered as an empirical probability distribution of a
twodimensional random variable: volume x and density y of particles
p ij (x,y) = P(xea i ,yeb j ) = N ij /N, i = 1,2,...,/; j = l,2,...,J (24)
where ai r 1=1,.. ., I are disjoint intervals of the particle size (size classes) in a domain X, and bp
j=l,.. .,/ are disjoint intervals of the particle density (density fractions) in a domain Y , Ny is a
number of that particles in the parent population, whose volume belongs to iih interval a\
and the density belongs to jth interval bp N is a total number of particles in the population,
/ J
and N = 2Z^'
i=\ j=\
In engineering practice a different measure of the probability is being more often applying,
the quotient of the respective masses:
7r iJ (x,y) = M ij /M 1=1,2,..., fc j=l,2,.J; (25)
where My is a mass of that particles in the parent population, whose volume belongs to iih
interval a\ and the density belongs to jth interval bp and M t  =x mi y m jNy , where x mi ,
y m ■ are mean values of particle volume and density in the intervals a\ and bp respectively;
M is a total mass of the population, M = x m y m N , where x m , y m are mean values of volume
/ J
and density of particles in the population, and M = \ 2_, M ij •
i=\ 7=1
There is a relation between two expressions of empirical probabilities (Walaszek
Babiszewska, 2004):
7r r a ijPiJ , f=l,2 I; j =12 J; (26)
where:
ay = Xm ' ,ymJ . (27)
■^msm
Table 1 presents the values of an empirical joint probability distribution p(xi,yj)=py,
calculated on the base of measurements (WalaszekBabiszewska, 2004). Each of the ranges of
Fuzzy Knowledge Representation Using Probability Measures of Fuzzy Events
335
volume and density of particles has been divided into 4 intervals. The smallest value of
indexes i,j concerns to the smallest value of density and volume:
x x <x 2 <x 3 <x 4 ; y x <y 2 <y 3 <y 4 
The marginal probabilities pi (x) and p.j(y) are also given in Table 1.
Density
fraction
number
Probability pij(x, y)
Marginal
probability
p.i(y)
7
Size class number
z'=l
z=2
z'=3
z=4
1
0.6290
0.0304
0.0074
0.0020
0.6688
2
0.1338
0.0044
0.0011
0.0003
0.1396
3
0.0534
0.0050
0.0010
0.0002
0.0596
4
0.1198
0.0092
0.0025
0.0005
0.1320
Marginal
probability
piM
0.9360
0.0490
0.0120
0.0030
2>
i
j
Table 1. The empirical joint probability distribution pij(x,y) and marginal probability
distributions p.fy), p\.(x) of particle features
3.2 Linguistic characteristics of particles
Perceptionbased information of human experts, expressing in natural language a quantity
quality characteristic of particles features, can be verified on the base of linguistic and
probabilistic modelling presented above.
Let us assume two linguistic variables considered above:
Xname : 'volume of particles' and the set of linguistic values L(X)={small(Ai), middleiAi),
large(A 3 )} with the membership functions determined over the disjoint intervals a^ i=l,.. ., I as
follows:
A x =l/a l +0.2/a 2 ; A 2 =0.S/a 2 +0.8/a 3 ; A 3 =02/a 3 +l/a 4
yname '■ 'density of particles' and the set of linguistic values L(Y)= {light (Bi), middle(Bi), heavy(B^)}
with the membership functions determined over the disjoint intervals bj , ;=!,..., /, as
follows:
#! =1/^+0.5/62; B 2 =0.5/b 2 +0.5/b 3 ; B 3 = 0.5/b 3 +l/b 4
For these two linguistic variables and the empirical joint probability distribution given in
Table 1. we can calculate the probability of the simultaneous events, e.g.
P{ (x is small) and (y is light)}
using (16) i (17) as follows:
P(A *B l ) = p n (x, y)ju Al (a x )ju Bl (b x ) + p n (x, y)jU A{ (a x )ju Bl (b 2 ) + p 2 \ (x, y)ju Al (a 2 )ju Bl (b { ) +
P2i(^y)/u Al (a 2 )/u Bl (b 2 )
336
Automation and Robotics
P(^ 1 x J B 1 ) = 0.6290ll+0.1338l0.5+0.03040.2l+0.00440.20.5=0.7024
In the similar way we can compute the values of probabilities P(A t x B ■ ) , i,j=l,2,3 (Table 2.).
At
A 2
A 3
P(Bj)
Bt
0.7024
0.0324
0.0037
0.7385
B 2
0.0946
0.0046
0.0005
0.0997
B 3
0.1488
0.0118
0.0012
0.1618
P(Ai)
0.9458
0.0488
0.0054
ZP(A t )=
ZP(Bi)=l
Table 2. The probability distributions of linguistic variables (x,y) representing probability of
fuzzy events P(A t xB •) and marginal probabilities
Probability distributions of linguistic variables (Table 2.) could be used for the validation of
experts' opinion:
'The contents of the light and small particles is very high'; P{A X x B x ) = 0.7024;
'The contents of the light fraction is high'; P(Bi)=0.7385;
'The contents of large particles is low'; P(A3)=0.0054.
The values of probability of fuzzy events calculated according to (16) and (17) depend on a
choice of a tnorm. The problem is important for creating the inference procedure in
knowledgebased systems.
3.3 Quality parameters of particles as a mean value of a fuzzy event
Characteristics of tested chemical components in population of particles are usually called
the quality characteristics. Suppose the quality parameter /L = p{x h yA in every elementary
fraction of particles, where x i , y j are mean values of particle volume and density in the
intervals a\ and bj, respectively. The mean value of a tested substance in the population of
particles whose features are determined by a fuzzy event e.g. "C: small and light particles"
can be calculated by using the notion of a mean value of fuzzy event, as follows (Walaszek
Babiszewska, 2004):
/ J
Pc
Y£PijPijMc(Xi>yj)
/ J
(28)
4. Knowledge representation
4.1 General form of a fuzzy model
A fuzzy model represented a MISO system, consisting of the collection of fuzzy rules in a
form 'IF x is A THEN y is B' is considered (Yager and Filev, 1995). The propositions x is A in
antecedents and y is B in consequents of rules are based on the partition of the inputoutput
space, given by experts. The exemplary ith file rule includes / elementary rules, in a form:
Fuzzy Knowledge Representation Using Probability Measures of Fuzzy Events 337
R f : w t (IF x { is A Xi AND x 2 is A 2 j.. .AND x p is A p i
THENyisB l (w l/i )
(29)
ALSOyisBjiWj/i)
ALSOyisBjiwj/i))
where x = (xi,...,x p ) is a linguistic vector of system inputs (antecedent variables), y is a
linguistic output variable. The linguistic values (term sets) L (x x ),..., L(x p ),L (y) of the input
and output variables are predefined by process experts. Fuzzy sets A u ,..., A • „ i=l,...,I
represent linguistic values of the input vector, and are defined by membership functions
ju A ,.(ui ),..., ju A .(u p )in the domains £/ lv . .,£/_, U t czR,i = \,...,p . The linguistic output
(consequent) variable y has the family of fuzzy subsets B with membership functions
Mb • ( v ) / ]~^>   •// i n the numeric space V cz R.
The rule weights w t and Wj /t i=l,...,I, ;=!,... ,/ represent probabilities of fuzzy events
occurring in the antecedents and consequence of the model w t = P(A ( ) , Wj /t = P(Bj I A t )
(WalaszekBabiszewska, 2007). The weight w t of a file rule represents a joint probability of
fuzzy events A Xi x...xA pi in the antecedent domain, calculated according to (16) and (17):
i 5 (4) = X^ 1 ''^ )r( ^ (wl) ''^/^ )) (30)
ueU
where T means a tnorm, membership functions ju A . (ui),...,jU A . (u p ) are defined in a such
way, that for every numeric value w r * =(m*,...,m*)gC/ the relationship ^ ju A .(u*) = l is
fulfilled, and p(ui,...,u p )is a probability distribution which assigns to each Borel set in LI a
real number pe [0,1].
Elementary rule weights w 7/ , i=const, ;=2,...,J state the conditional probabilities of the
events (y isB) of the consequent variable, under the condition of the input variable (x
is A t ). It can be calculated from Bayesian formula (see (22)), as follows
P(A xB ■)
w Jlt = P(Bj /A,)= ' J , jl J, i=const (31)
where the probability of fuzzy events (fuzzy relations) A t x B • , i=l,...,I, j=l,...,J ,
determined by the formula
P(A t xBj) = ^pfu^Tfji^ (u),ju Bj (v)) = w y (32)
(u,v)gUxV
338 Automation and Robotics
states the joint probability distribution of linguistic inputoutput vector
P(XJ) = {P{A i xB j )\ i=l,...,I, ;=!,...,/ . The joint probability distribution
p(u,v)<= [0,1] determined in the inputoutput universe UxV <^R P+ is understood in the
sense of the probability theory.
The weights w t , w tj  and Wj /t i=l, . . .,!, j=l, . . .,/ of the model can be estimate by using a set of
inputoutput measurements pi m ,v m )j / m=l / ... / M and as probability distributions should
fulfil the relationships
/ I J J
X W/ =1 ' XX W V = l ' ^ W JH =1 > i = COmL ^
i=\ i=\ 7=1 7=1
4.2 Inference and aggregation procedure
The approximate reasoning is based on a fuzzy logic and fuzzy sets theory (Zadeh, 1979).
The generalized modus ponens permits to deduce an imprecise conclusion from imprecise
premises. A great number of works in the literature dealt with fuzzy reasoning, e.g.
(Pedrycz, 1984), (Yager & Filev, 1994), (Hellendoorn & Driankov, 1997).
When the proposition x is A* is given, then from the ijth elementary rule of the model (29),
a proposition y is B* /t can be computed. The membership function ju * (v) of the inferred
"J B . i .
fuzzy output is given by the formula:
ju * (v) = sup MG[/ T(ju „ (u),ju R (u,v)) (34)
°j I i A i J
where T means a tnorm, Rjj is a fuzzy relation determined in the inputoutput space UxV
with the membership function jU R ..(u,v) expressed as an implication operator or as a tnorm
(min or product) derived from membership functions ju A .(u) and ju B .,.{v) . Inferred fuzzy
set B* fi depends on a tnorm as well as the chosen type of the fuzzy relation jR^.
Let us check the inferring procedure from the model (29), taking into account the rule
weights representing probabilities of fuzzy events defined above (according to (Walaszek
Babiszewska, 2007a and 2008). Assuming a crisp value (singleton) of input variables
u = (u *,..., u* p ) with the degree of fitting u to the input fuzzy set A; , calculated by
MA t ( w *) = T (J U A 1 . ("*)>»•> MA Pti ( u *p)) = T i ( 35 )
the output fuzzy set B* fi can be found as follows:
/V (v) = T(ju A (u*),jU B (v)) (36)
Fuzzy Knowledge Representation Using Probability Measures of Fuzzy Events 339
where the tnorm determines the relation Rjj . Using the product tnorm (according to
Larsen's rule) in (36), we have the output fuzzy set B* /t inferred from ijth elementary rule,
determined by a membership function
M n * ( v ) = T iMB i/i ( v ) ( 37 )
B jli J' 1
Fuzzy outputs B* /t computed from elementary rules j=l,...,], at the same value of the
antecedent (i=const), can be aggregated by using weights Wj /t :
J
M B * (v) = r t ^ wj i t ju Bj / . (v) (38)
7=1
The fuzzy set B* derived in such way is a fuzzy conditional mean value (see (7) in
paragraph 2.2) of the conclusion (37), calculated under the condition ( x is A* ).
If the crisp value of input variables u = (wj\...,w* ) belongs also to another input fuzzy sets
A if andr, ^0, i=l,...,I then fuzzy outputs of the file rules B* , i=l,... f I can be aggregated
using weights w t of all switched rules. Then the aggregated fuzzy set B* states a total mean
fuzzy value of the conclusion (37), with the membership function calculated according to:
/ J
M B* (V) = X WjTi X W J ' iMB J I i (V) ^
7=1
or in the way:
v (v)= ^ — —i w
B _
Y J w i T iYj w J i ^ B Jn {v)
7=1
Z
The relationships (33) have been taken into account in formulas (38) and (39).
4.3 Knowledge representation of stochastic systems
Stochastic systems are often described by the ordered pair (x,y) of input and output
variables:
{(x(t, co), y(t, co):teT,xeX,yeY,coeQ] (41)
where X is the system input domain, Y is the output domain of the system, T represents a
time domain, and CI is an elementary events domain. There is a certain probabilistic, reason
result relationship between variables x and y, where x plays the role of a reason, and y  the
result.
340 Automation and Robotics
In paragraph 4.2 we considered the linguistic fuzzy model of the MISO system, assuming
that x and y are linguistic variables (vector) with linguistic values determined by suitable
fuzzy sets in the input and output numerical domain. Moreover, the probabilistic measure
p(x,y) on a set of realizations of the processes have been given. The model (29) can be treated
as a joint probability of linguistic vector variable in the inputoutput domain.
Let us assume now, that the probabilistic measure p(x,y) on a set of realizations of the
processes \x(t),y(t)}, t = t k ,k = 1,2, ...K observed at the discrete moments, is given.
There are many models of stochastic systems discrete in a time domain T, for example an
inputoutput dynamic model:
y(h) = /[x(^),x(^_ 1 ),,xfe_ w ),...,3;fe_ 1 ),...^fem)] (42)
where f() can be a multivariable regression function. These types of models are well known
as BoxJenkins 7 time series models and are modelled by using TakagiSugeno type fuzzy
models (Yager, and Filev, 1994), (Hellendoorn, and Driankov, 1997).
We are interested in other types of models, which take into account a multivariable
distribution function of the processes \x{t),y(t)\t = t k ,k = \,2,...K observed at the discrete
moments, e.g.
p(x, y ) = p[x{t k ix{tkil'"Mt k  n )>>y(tk)>y(tk\l>y(tkm)] (43)
These models are used in more simple forms, as the first order models (e.g. white noise) or
the second order models (e.g. Markov's process, known also as a short memory process).
The general form of the fuzzy model of a stochastic process discrete in a time domain T, can
be expressed as a set of weighted rules:
w t [IF x(t k ) is A ik AND x(t k _ x ) is A ik _ x . . .AND x(t k _ n ) is A ik _ n . . .
ANDy(t k _ l )isB uk _ l ...ANDy{t k _ m )isB uk _ m (44)
THENy(t k )isB uk ]
where
i=l,...,I  number of rules, determined by the partition of the inputoutput space
x n+l xY m+l.
x,y linguistic variables, xeX , ye 7 with linguistic values sets L(X), L(Y), determining
linguistic states of the system,
A i k , A t k _i,...,A t k _ n  fuzzy subsets corresponding to linguistic values of variables
x(t k ),x(t k _ l ),...,x(t k _ n ) / xeX ;
B ik , B t k _i,...,B t k _ m  fuzzy subsets corresponding to linguistic values of variables
yitklyitkil'yitkm)' y^ Y >
w t  weight of iih rule, a joint probability of the fuzzy event (fuzzy relation R t ) in the
inputoutput space X n+l x Y m+l (according to (WalaszekBabiszewska, 2007b))
w t = P(R t ) = P{A uk x A uk _ x x ... x A uk _ n x B uk x B^ k _ x x ... x B ifk _ m ) (45)
The weighted rule (44) can be easily written in a form of a rule with two weights,
corresponding to a probability of the antecedent events and to a conditional probability of
the consequent event, similarly to model (29).
Fuzzy Knowledge Representation Using Probability Measures of Fuzzy Events
341
4.4 Exemplary knowledge representation of a stochastic process
The data{x tk } of the euro/ Polish zloty exchange rate, observed daily in the first year of
involving it into 12 countries of the EU, has been recognized as a realization of a certain
stochastic process. The process has been modelled to predict some linguistic value of the
process and the probability of its occurrence.
Two variables
x tkv x *k2
have been assumed as antecedent variables. From the point of
view of fuzzy modelling, the created model represents a fuzzy relation R(x t ,x t .
\> x u
)of
the linguistic variables in a form of weighted rules. Three linguistic states of the process
have been distinguish: L(X)={low(A\), middle(Ai), high(As)} and the fuzzy meaning have been
defined, based on disjoint intervals in the process domain X.
The joint empirical probability distribution p(x tk ,x l
9 x tl
, ) has been calculated, using
t k ^t k _i^t k _ 2
disjoint cube intervals a t xaj xa k e X 3 , z,;,/c=l,...,4. The empirical probability distribution
P(x t , x t , x t ) of linguistic variables, taking the fuzzy states A X ,A 2 , A 3 observed at the
moments t k ,t k _ l ,t k _ 2 , has been computed. Then, the marginal and conditional probability
distributions have been calculated.
The linguistic fuzzy model consists of 7 file rules. Table 3. presents all file rules of the model
in a form of a decision table (WalaszekBabiszewska, 2007b).
x t\
A 1
K t2
A 2
A 3
A!
A 2
A 3
'x t isA l /0.S4
'x t isA 1 /0A2
0.365
x t is A 2 /0.16
0.06<
x t is A 2 /0.55
x t is A 3 /
x t is A 3 / 0.03
x t is A x 1 0.4
'x t is 4/0.10
x t is A x 1
0.07<
x t isA 2 /0A3
0.07<
x t isA 2 IO.%5
0.025^
x t isA 2 /0A&
x t is A 3 /0.17
x t is A 3 / 0.05
x t is A 3 / 0.52
x t is A x /0
x t is Ail
0.03<
x t is A 2 / 0.30
0.380<
x t is A 2 10.01
x t isA 3 10.10
x t is A 3 I 0.93
Table 3. The rulebased fuzzy model of the stochastic process {x t }
5. References
Zadeh, L.A. (1975). The concept of a linguistic variable and its application to approximate
reasoning. Information Sciences, Part I, Vol. 8, pp. 199240
Zadeh, L.A. (1968). Probability measures of fuzzy events. Journal of Mathematical Analysis
and Applications, Vol.23, No.2, pp. 421427
Kacprzyk, J. (1986) Fuzzy Sets in System Analysis (in Polish), PWN, Warsaw
342 Automation and Robotics
WalaszekBabiszewska, A. (2008). Probability measures of fuzzy events and linguistic fuzzy
modelling forms expressing randomness and imprecision, Proc. WSEAS Conf. 'Art.
IntelL, Knowledge Eng., and Data Bases', pp. 207212, Cambridge, UK, February 2008,
WSEAS
WalaszekBabiszewska, A. (2004). Statistical and Fuzzy Modeling of Grain Material Sampling
and Operations; Selected Approaches. Publishing House of the Silesian University of
Technology, Gliwice, Poland
Yager, R. R. & Filev, D.P. (1995). Essentials of Fuzzy Modelling and Control (in Polish), WNT
and Wiley, Warsaw
WalaszekBabiszewska, A. (2007a). Construction of fuzzy models using probability
measures of fuzzy events, Proc.l3th IEEE/IFAC Int.. Conf. on Methods and Models in
Automation and Robotics, MMAR 2007, pp. 661667, August 2007, Szczecin, Poland
Zadeh, L.A. (1979). A theory of approximate reasoning, Machine Intelligence, Vol.9, J.E
Hayes, D. Michie and L.I. Mikulich, (Ed.), Elsevier, New York, pp. 149194.
Pedrycz, W. (1984). An identification algorithm in fuzzy relational systems. Fuzzy Sets and
Systems, Vol.13, pp. 153167
Yager, R. R. & Filev, D.P. (1994). Template based fuzzy systems modelling. Journal of
Intelligent Systems, Vol. 2, pp. 3954
Hellendoorn, H. & Driankov, D. (Ed.) (1997). Fuzzy Model Identification; Selected Approaches,
Springer, Berlin  Heidelberg
WalaszekBabiszewska, A. (2007b). Linguistic knowledge representation for stochastic
systems. Proc. of the Int. Multiconference on Computer Science and Information
Technology IMCSIT 2007 (in cooperation with IEEE), Wisla, Poland; Vol. 2, pp. 141150
20
Multiple MultiObjective Servo Design 
Evolutionary Approach
Piotr Wozniak
Institute of Automatic Control, Technical University of Lodz
Poland
1. Introduction
Design of control systems is characterised by many targets, therefore the methods enabling
optimisation of several objectives have received more and more attention over the past
years. When dealing with multiobjective optimisation problems the notion of the scalar
function optimality was extended. The most common approach was originally proposed in
19th century by Edgeworth and later generalised by Pareto. This tradeoff approach means
no element of the vector of optimal solution, so called Pareto optimal solution, can be
improved without making some other criteria worse. There are many different notions of
dominance. One of them is so called weak Pareto dominance relation which is defined as
follows :
< T r.= {(x. y)  x. y G X A V/« € F : /,(x) < / t (y)} (1)
where T ' is a set of objectives with
T' QT := {/i...../»,}
A solution x* e X is called Pareto optimal if there is no other x e X that weakly dominates x*
with respect to the set of all objectives taking into account all constraints. The set of all
optimal solutions form the Pareto set.
Most of the research in the multiobjective optimisation has concentrated on tracing
the Pareto front. Often this solution, which is nondominated in the objective space, cannot
be described analytically especially when the complexity of the problem makes
exact methods unsuitable. The Pareto set is the projection of the Pareto front to the decision
space.
In the last 20 years metaheuristics approach to the multiobjective optimisation problems
proved it can be applied even when only little is known about the underlying problems.
From these methods, evolutionary algorithms are, without a doubt, the most widely used
today mainly due to their flexibility while dealing with nonlinear, nonquadratic, non
convex problems and thanks to their ease of use (for extensive presentation of the stateof
theart research results see (Coello Coello, et al., 2007)). Also in engineering design
formulated as multiobjective optimisation problems the evolutionary algorithms (MOEA)
344 Automation and Robotics
achieve popularity (Fleming et al., 2005) although generating Pareto front approximation is
computationally expensive.
At the moment, thanks to rapid progress in computing technologies, novel algorithms of
populationbased optimisation may now be run on multiprocessor computing platforms in
shorter time.
On the other hand, the designer, as well as the decision maker, may not be interested in
having an excessively large number of Pareto optimal solutions (vectors from the decision
space) to deal with due to overflow of information. Therefore, many multiobjective
optimisation problems are reformulated to find a manageable number of Pareto optimal
vectors which are evenly distributed along the Pareto front, and thus good representatives
of the entire set of decisions. In real problems, a single solution must be selected.
Preferably, unique solution must belong to the nondominated solutions set and must take
into account the preferences of a designer and the decision maker.
Evolutionary methods are extensively applied for multiobjective optimisation problems
mostly with two or three objectives only (Coello Coello, et al., 2007). On the other hand
designers may prefer to put every performance index related to the problem as an objective,
rather than as a constraint, thereby increasing number of criteria. The problems with a high
number of objectives cause additional challenges with respect to lowdimensional problems.
Current algorithms, developed for problems with a low number of objectives, have
difficulties to find a good Pareto front approximation for higher dimensions. Even with the
availability of sufficient computing resources, some methods are practically not useable for
a high number of objectives. It has been investigated, whether it is possible to effectively
solve optimisation problems with a large number of objectives where most of solutions
generated become incomparable (Brockhoff & Zitzler, 2006). In the complex design it is
not clear whether any two given objectives are nonconflicting. That is, although a conflict
exists elsewhere, some objectives may behave in a nonconflicting manner near the Pareto
front. In such cases, the tradeoff curve may be of dimension lower than the number of
objectives.
The problem of dimensionality reduction multiobjective optimisation is defined as
the question of finding a minimum objective subset, maintaining the given dominance
structure (1) and good approximation of the Pareto front.
There are increasing number of research recently on influence of the objectives reduction on
quality of the Pareto front approximation. In the literature dominates the a posteriori
approach, where reduction is performed after preliminary solution to the multiobjective
optimisation problems, (Deb & Saxena, 2005), (Brockhoff & Zitzler, 2006), (Wozniak, 2007a).
Alternatively, a reduction in the complexity of most design problems is typically achieved
by the problem decomposition based on the designer/ decision maker's knowledge
(Engau & Wiecek, 2007), or the transformation of the multiobjective optimisation problem
into the set of singleobjective optimisation problems (Qingfu & Hui, 2007).
The objective of this study is twofold. First, aim is to find a new coordination mechanism
which guarantees that the final selection leads to a design that is Pareto optimal for
the overall multiple MultiObjective Optimisation Problem (mMOOP). The second aim is
to propose a procedure for the mMOOP with many objectives solution under the changing
environment conditions.
The methodology presented in this study integrates several multiobjective optimisation
problems, while steering clear of the high dimensionality problems.
Multiple MultiObjective Servo Design  Evolutionary Approach 345
The issues of multiobjective optimisation are highlighted in Section 2. The multiple multi
objective optimisation problem is outlined in Section 3 while the proposed algorithm for the
mMOOP solution is proposed in Section4. In Section 5 the application of the mMOOP
design is presented for the servo design as a future field of interest. The Section 6
summarizes the study.
2. Dimensionality issues in multiobjective optimisation
The majority of the existing multiobjective evolutionary algorithms for approximating
the Pareto front have been designed for, and tested on, low dimensional examples (Coello
Coello, et al. 2007). However, for complex optimisation problems often a higher number
of dimensions occur. Increased number of criteria cause difficulties in terms of the quality of
the Pareto front approximation and running time (e.g. algorithms based on
the hypervolume indicator (Brockhoff & Zitzler, 2006) lead to running times exponential in
the number of objectives). Additionally there is a greater probability of having any two
arbitrary solutions to be nondominated to each other. Consequently the proportion of such
solutions in the population increases. Since multiobjective evolutionary algorithms put
more emphasis on the nondominated solutions, a significant part of the old population is
preserved in the elite (Coello Coello, 2007). Therefore growing elite leaves no much room for
new solutions to be included in the population when the constant size of pool is assumed.
This, in consequence, reduces the selection pressure for the better solutions in
the population and the search process slows down.
When the Pareto dominancebased ranking procedures become ineffective determining
the quality of solutions, new measures and relations are introduced to guide
the optimisation process. Recent results on using preference orderbased approach as
an optimality criterion in the ranking stage of multiobjective evolutionary algorithms
(Engau & Wiecek, 2007) proved convergence improvement.
In general dimension reduction aims at keeping those objectives that can explain most of
the variance in the objective space. However, it is not clear :
i. how the objective reduction alters the dominance structure,
ii. what is the quality of a generated objective subset.
The most accepted method is aggregation of the vector objectives into the single criterion by
introducing the weighted sums. The multiobjective problem is therefore reduced to single
function optimisation which is easy to solve even in the presence of local optima and, on
a first sight, scale well.
But for high dimensions these techniques reach their limits, since :
i. it is hard (or even impossible) to determine good weights,
ii. such approaches lack the desired parallel search ability.
Another prospective ways of solving this type of problems includes reduction in the number
of objectives (Brockhoff & Zitzler, 2006), (Wozniak & Witczak, 2007), (Wozniak, 2007a) or
discovering objectives, which are entirely unrelated by the divideandconquer strategy
(Purshouse & Fleming, 2003). The later method is based on splitting multiobjective
optimisation problem into subproblems. The main limitation of this approach is excessive
number of pairwise comparisons at the merge step after solution of subproblems.
Decomposition methods are particularly well suited for design optimisation as most of
complex engineering systems usually consist of many subsystems and components having
smaller complexity. Dividing large and complex systems into several smaller entities is done
346
Automation and Robotics
to enable local optimisation and decisionmaking. In general, however, these subsystems
will still be coupled so that the solution of each subsystem is dependent upon information
from the others. Hence, along with the benefit of reduced complexity, comes the issue of
exchange of the separate design decisions (i.e. values of the criteria arguments) to eventually
arrive at a single overall design solution that is feasible. To solve this coordination problems
the concept of the multiple multiobjective optimisation is introduced in Section 3.
3. Problem definition
The mathematical background of the multiple multiobjective optimisation problem remains
the same as of a classic multiobjective optimisation problem.
We consider the common formulation of the multiobjective optimisation problem in its
general form :
min. /(x),
s.t. x = [x 15 x 2 ,... ,x m ] ,
f(x) = [Mx),f 2 (x),...,f n (x)] ;n>2
(2)
subject to. g(x) = [g 1 (x),g 2 (x),...,g m (x)]<0,
h(x) = [h { (x), h 2 (x), . . . , h t (x)] = 0,
where x is the vector of the decision variable, which might be subject to inequality g(x)
and/ or equality constraints h(x).
A solution which satisfies all the constraints is called a feasible one. Due to contradicting
objectives there is no single solution to (2). Instead there is a set of alternative solutions.
Obj ective space
Fig. 1. Representation of the decision space and the corresponding objective space.
These solutions are optimal in the sense that no other solutions dominate (are superior to)
them when all objectives are considered. They are known as Paretooptimal solutions.
The interest, in the classical multiobjective optimisation problem, is therefore on the trade
offs with respect to the objectives (Shukla & Deb, 2007). Each objective function maps
Multiple MultiObjective Servo Design  Evolutionary Approach
347
the input decision vector (point in the m dimensional decision space) (see Fig. 1) to
the target vector in the n dimensional objective space.
The domination relation defined in the objective space is used to identify
i. the Pareto set in the decision space,
ii. the Pareto front in objective space and
iii. the Pareto rank of each solution.
The main difference between approach introduced in this study and classical single multi
objective optimisation problem lies in the synchronised consideration of simultaneous
multiobjective optimisation problems sharing the same decision space, but with
the environment changes. Distinct environment conditions may be introduced when
variations in the multiobjective optimisation problem formulation is needed to describe
discrepancy between the physical plant and the mathematical model with constraints used
for the design.
Every vector of the environment changes form the context which therefore is identified by
its parameters, and is denoted c. The context belongs to the permissible environment
conditions space C°.
There are several possible ways to integrate environment conditions c e C° into a classical
multiobjective optimisation problem. In each case the vector of objective functions (results
in Fig.2) changes.
decisions
context
mMOO
evolu
tionary
framework
f^
fr"
I^ 5 *
results
^
1 i**
^
Fig. 2. The changes of environment conditions for the plant leading to multiple multi
objective optimisation problem (mMOOP).
The alternatives may be obtained by :
i. extending the decision (input) vector by the context c. Now we consider the resulting
mapping with extended (comparing to (2)) arguments /*(x,c) . A common algorithm for
a multiobjective optimisation problem is used to find all optimal solutions in
the decision space of the higher dimension. Since the decision space of the problem and
the context space C° are unified, just the optimal solutions x* c over the new input space
will be found. For this reason such integration of the environment conditions is not
suitable for the control system design.
ii. extending the objective vector by the context c. The resulting mapping will be/ c (x) with
f c e FC n+0 in higher dimensional space. A common algorithm for a single multiobjective
optimisation problem is used to find all optimal solutions in the objective space of
the higher dimension. For this reason, as discussed in details in Section 3, such
an integration of the context is not preferred.
348
Automation and Robotics
iii. treating every context as a single multiobjective optimisation problem.
This corresponds to an exhaustive aposteriori search in every o approximated Pareto
fronts (for all possible contexts). It is obvious that such an approach is not efficient,
because it leads to optimisation in the set of o fronts / c (x c ).
iv. The multiple multiobjective optimisation problem mapping. The characteristic is that
all different multiobjective optimisation problems share the input space, and the
outputs are generated concurrently / c (x).
The key observation is that in the multiobjective optimisation problem framework iv.
finding Pareto optimal solutions is equivalent to a search for a tradeoff solution with
variation within some parameters.
In this study variations included in the multiple multiobjective optimisation problem
mapping formulation iv. are considered as distinct working conditions of the system (see
Fi s 2 >
Directly from the above definitions of the multiple multiobjective optimisation problem
mapping follows that there are multiple outputs for a single decision input (one for every
context). After collecting a set of solutions, the Pareto rank for every solution in each context
can be calculated.
To compress this information to a single value only the highest Pareto rank value
(the lowest from the calculated Prank . ) is selected and further defined as
bPrank = mini Prank 7 , Prank 2 , . . . , Prank \
(3)
This value bundles the quality of a solution into a single value. As a result its value is crucial
for multiobjective optimisation algorithms, because they are based on ranking comparisons
of different solutions.
Goalbased objectives
and performance
Control goals
Multiobjective design
Context (task requirements)
Fig. 3 Multiobjective control design framework with task requirements  context.
In this work, we propose a procedure of transferring some performance criteria of
the control system into the context variables. The approach is motivated by the reallife
problem of having a large number of potential objectives in the redundant robot
manipulators control based upon the existing multicriteria inverse kinematics, and will be
discussed in details in Section 5.
The taskbased controller is a controller that unifies position and force control of redundant
manipulators and takes task requirements as the central component of the multiobjective
control design framework, with context presented in Fig. 3.
Multiple MultiObjective Servo Design  Evolutionary Approach 349
4. Evolutionary methodology of the multiple multiobjective optimisation
problem solution
Since evolutionary algorithms deal with a number of population members in each
generation, they are ideal for finding multiple Paretooptimal solutions in of the multi
objective optimisation problem. All of these methods emphasize :
i. nondominated solutions for progressing towards the Paretooptimal front,
ii. lesscrowded solutions for maintaining a good diversity among obtained solutions,
iii. elites to provide a faster and reliable convergence near the Paretooptimal front.
There are numerous approaches for solving multiobjective optimisation problems.
The salient features of multiobjective evolutionary algorithms are :
i. the convergence of solutions in the objective space to the Pareto front,
ii. support for diversity of the solutions along the front,
iii. efficiency characterised by the processing time or the number of evaluations
required.
New algorithms introduced every year aim to improve on one or more of the above
mentioned issue. Some of the most wellknown algorithms are: VEGA, MOGA, PAES,
NSGAII and SPEA2. For comprehensive description see (Konak et al., 2006) and (Coello
Coelloetal.,2007).
Essential parameters to be fixed in an evolutionary algorithm:
i. population size,
ii. number of generations,
iii. parameters related to selection,
iv. recombination (crossover probability, crossover operator),
v. mutation (mutation probability, mutation operator).
Population size is a crucial parameter in a successful application of each algorithm. Even in
the case of an adequate population size optimisation the algorithm must be run for a critical
number of generations in order to obtain convergence near the optimal solution (Coello
Coelloetal.,2007).
In case where context can be configured concurrently, a single evaluation run delivers
several results, each consisting of multiple objective values, for each instance of the multi
objective optimisation problem.
The presented approach is based on sequential calculations of MOO subproblems of
the multiple multiobjective optimisation problem. After selecting one, leading multi
objective optimisation problem, its Pareto set is henceforth considered as constant for all
remaining multiobjective optimisation problems.
The idea behind this approach is presented in Fig. 4 for two contexts of a biobjective
problem (denoted f^fi 1 in Fig. 4a and/i 2 ^ 2 in Figs. 4b and 4c, respectively).
After four elements of the Pareto front for the first context are found and designated with
different symbols in Fig. 4a, their arguments in the decision space are passed to the second
context. Using each of the values may result in a front shown in Fig. 4b, when the next,
second, multiobjective optimisation problem is solved. This means that for each point in
the objective space of the first multiobjective optimisation problem there may be more than
one solution in the second objective space. These are designated by the same symbols like in
Fig. 4a.
In the next step the results are sorted for nondominancy and lead to the front depicted in
Fig. 4c (dominated solutions are discarded).
350
Automation and Robotics
ti
a)
/i 1
ft
b)
X o
J\
fi
c)
y. :
Fig. 4 Outline of Pareto front derivation for two contexts of biobjective optimisation
problems
Considering the above mentioned approach, the pseudocode of the proposed sequential
optimisation may be formulated as presented in Fig. 5.
For this specific multiple multiobjective optimisation problem design the order of
the considered sequences of contexts is far less important than in the similar multiple multi
objective optimisation problem s proposed in (Avigad, 2007) and (Ponweiser &
Vincze, 2007). It is possible to make it robust to the order of the multiobjective optimisation
Multiple MultiObjective Servo Design  Evolutionary Approach 351
problems by introducing epsilon tolerances to reflect the implicit tradeoff between
solutions of two different contexts.
1. Decision Making step  identify all contexts
c. , i=l,..,o, and introduce the order in the C
set .
2. Initialise parameters of MOEA and search space.
3. Apply MOEA with nondominated sorting to solve
C 1 . Store results in form of the Pareto set x 1
and the Pareto front c lf i.e. (x 1 ,t 1 ) .
4. For j:= i+1 to o do
a. Initialise c th MOEA parameters taking into
account Pareto solutions {x._ lf c.^)
b. Apply MOEA with nondominated sorting to
solve c. Store results in form of
j
the Pareto set x. and the Pareto front c. f
i.e. (x.,c.)
c. Reject from (x._ 2/ c._J solutions, which
became dominated in the j th step
5. IF the maximal number of populations is reached
THEN STOP ELSE goto STEP 3
Fig. 5 Pseudocode of the proposed mMOOP algorithm.
Solving the individual MOO subproblems before selecting a final design generally may
overemphasize one context, while significantly degrading the performances of others.
Moreover, it is shown that the best compromise solution is not necessarily optimal for any
MOO subproblem, and thus remains unknown to the designer who follows the traditional
decomposition  integration approach. We plan to consider this issue in the near future.
The first and probably the most important property that needs to be considered for
the design of optimiser for a multiple multiobjective optimisation problem are multiple
instances of the objective space. There exists one for every context. Although any of
averaging technique can be used to operate in these spaces (e.g. mean, standard deviation,
minimum or maximum value), a careful selection of values from each one is needed.
Furthermore, the computational effort increases enormously because the calculations have
to be done for every context separately. Out of these insights it is advisable to avoid
performing any operations in the objective space.
In classical multiobjective evolutionary algorithms methods the objective space is
intuitively used to calculate the density of solutions (for example in SPEA2 or NSGAII).
A solution for the multiple multiobjective optimisation problem is to relocate the density
calculations from the objective space to the decision space. The placement of these measures,
either in the decision space or in the objective space, was subject to a long scientific
discussion (Coello Coello et al., 2007). In most of the implementations the objective space is
used. Therefore, at this stage of research on multiple multiobjective optimisation problem,
the NSGAII (Deb, 2001) stateofart algorithm is considered as the most prospective.
352 Automation and Robotics
Another effect that needs to be considered is the extension of the Pareto rank to the best
Pareto rank (3). In the NSGAII the Pareto rank is the main selection criteria. A drawback of
the best Pareto rank is its computational effort, but so far no better approach may be put
forward. The complexity of a single Pareto rank calculation is multiplied by the number
of contexts. This issue still lacks a computationally effective solution.
5. Multiple multiobjective optimisation problem of servo control  an outline
We will consider the socalled mechatronic servo system, i.e. the servo system adopted in
the numerical control machine or industrial robot with many joints. Generally, dynamic
characteristics of robot actuators and sensors are highly nonlinear with constraints, and
these factors cause trajectory control errors. Feeding back the difference between the robot
servomechanism velocities enables force adjustment.
The performance criteria for robot control optimisation may be broadly divided into two
categories :
i. constraintbased criteria,
ii. operational goalbased criteria.
The constraintbased criteria, as its name implies, are directly associated with system
constraints (e.g. joint limits, obstacles, singularities, etc.). Therefore, in general they have
clear physical meanings that the user can easily relate to. They are taskdependent and
usually give more insight to the operator on the task at hand.
Operational goalbased criteria, on the other hand, are concerned with the ability of
the robot to perform the task better. They are functions of only manipulator configuration
and states, and are not tied to any specific task. This makes the criteria very useful for
the system designer, who cannot foresee all the possible tasks the robot could perform in
the future.
The comprehensive description of the objectives, and performance criteria, for optimisation
of redundant robot system presented hereafter was published in the Ph.D. thesis (Pholsiri,
2004). Redundancy, in this context, is defined as having more inputs than those required
to create the desired output. As such, traditionally nonredundant robots, e.g. most
6 degrees of freedom (DOF) commercial robots, can be considered redundant too if their
tasks at hand require fewer DOFs than the robots possess. Redundancy implies an ability
to change configuration of the joint without changing the position of the robot's
endeffector.
The main criteria are listed hereafter, and will enable the introduction and formulation of
the multiple multiobjective optimisation problem :
CI Criteria for Joint Range Availability (JRA).
Every joint in a manipulator has its travel limits which cannot be exceeded. Any attempt
to move a joint over its limit can potentially damage the robot.
1 " (
YjRA = ~Z^
(4)
where :
6i is the joint displacement,
Gi f mid is the displacement at the midpoint of the travel range,
O^max is the displacement at the travel limits.
Multiple MultiObjective Servo Design  Evolutionary Approach 353
C2 Criteria for Velocity Limit Avoidance.
The joint Velocity Limit Avoidance (VLA) tries to minimise the velocity of each joint or
the sum of the velocities of all joints. The velocity limit can be avoided by minimizing
the norm of the joint velocity vector. It is crucial to keep VLA from approaching 0.
The pseudo inverse solution minimises the VLA criterion.
C3 Criteria for Peak Torque Avoidance.
Although their formulation is simple and straightforward, their use in practice is limited for
various reasons. First of all, the torque readings require that torque sensors be present at all
actuators, which is not common (due to their cost). Secondly, even with the torque
information available, this criterion can only be used to monitor the torque states of
the robot but generally cannot be used in redundancy resolution to prevent the robot from
exceeding their joint torque limits because most, if not all, redundancy resolution techniques
do not work in the force domain.
C4 Criteria for Obstacle Avoidance.
When a manipulator is utilised in a cluttered environment or in a multiarm system,
the need to avoid obstacles or contacts with other manipulators arises. This may be
formulated in the form that it is independent of the number of links and the number of
obstacles.
C5 Criteria for Mathematical Singularity Avoidance.
Physically, at singularities, a manipulator loses one or more degrees of freedom. The robot
may not be able to move along the desired direction. To avoid mathematical software
failure, it is crucial to keep MSA from approaching zero.
The objectives mentioned above (CI  C5) represent constraintbased criteria and may
compose the context for operational goalbased objectives (Gi).
The most important goalbased objectives are :
Gl Criteria for Manipulator Precision.
A manipulator's joints are expected to have some amount of error, including position sensor
error (encoder resolution or noise), control error, and deflection due to joint compliance.
These joint errors are propagated through the links and to the end effector. Minimizing
the effect of this error propagation is essential in applications requiring precise
manipulation.
G2 Criteria for Speed of Operation.
Maximising Velocity Transmission Ratio (VTR) will minimise the joint velocity required
to produce a given end effector speed in the direction, in general or for any given joint
velocity.
G3 Criteria for Load Carrying Capacity.
Maximizing Force Transmission Ratio (FTR) will increase the end effector force capability in
the desired direction. Looking at formulations of the VTR and the FTR, it can be concluded
that they are not independent.
G4 Criteria for Energy Minimisation.
Kinetic energy minimisation is one of the early criteria used in redundancy resolution
because kinetic energy is directly associated with the power consumed by the system during
its operation. It is desirable to minimise the energybased objective, especially for repetitive
tasks.
354 Automation and Robotics
A quick look at the list of performance criteria (Gl  G4) reveals that most, if not all, of these
criteria are coupled. It is therefore not possible to optimise one criterion without affecting
another. Hereafter there is a list of the major interaction between criteria. For example,
maximising the JRA (4) criterion will likely have an impact on the VTR criterion. Even
though the intention of adding the JRA to the redundancy resolution process is merely
to avoid the joint limits, we may unintentionally decrease the ability of the robot to move in
a desired direction. These couplings also make it impossible to completely separate
the purposes of these criteria, making the task of choosing criteria for a given optimisation
very difficult.
These couplings result in conflicts among criteria. The best example is the conflict between
the speed and force capabilities of the robot. When considering them independently one
would like to maximise both of them. However, because of the conflicting nature of these
two quantities, it is physically impossible to do so at the same time. A closer look at the VTR
and the FTR criteria shows that these two criteria are tightly coupled. As a matter of fact in
some special cases they are the reciprocals of each other. It was investigated whether
the VTR can be used to either increase the end effector speed or the end effector precision
(Pholsiri, 2004). However, while increasing the speed requires that VTR be increased,
improving the end effector precision demands the opposite.
These conflicts also cause difficulty when choosing appropriate criteria for a given task.
The problems of couplings and conflicts among performance criteria are one of the main
motivations behind the multiobjective optimisation research in the robot's servo control
design.
In the considered redundant robot control problem the context is defined by constraint
based criteria (C1C5).
While it is essential to keep the system from violating constraints (C1C5) during operation,
their values are not objectives of optimisation. Instead, their values may differ from one
context to another. The most straightforward approximation is to keep every constraint
constant during optimisation in each context.
At the present moment the investigation on the proposed novel multiple multiobjective
optimisation problem is at its early stage of development. First simulation experiments
showed that there is still significant potential for improvement, especially in
the development of metrics measuring the performance of optimisation algorithms for
multiple multiobjective optimisation problem in decision space, instead of using evaluation
in the objective spaces (one space per context).
5. Case study  servo design
The mechatronic servo system, i.e. the servo system adopted in the numerical control
machine or industrial robot is considered. In this system, there are two types of control.
One is position control (PTP: point to point) emphasizing the arriving time and stop position
from any position without considering the response route. Another is the contour control
emphasizing the motion trajectory from the current position to the next position (position at
each moment and its motion velocity).
The typical system includes the servo system of each axis, which is consists of the following
parts :
Multiple MultiObjective Servo Design  Evolutionary Approach
355
 the motor ,
 the power amplifier ,
 the current control ,
 the velocity control ,
 the position control.
The structure of the system is generally different from the servo system introduced in
textbooks of automatic control and is presented in Fig. 5 (Wozniak, 2007b).
Reaction force
Reference
input
generator
i
1
t
s >
Mechanism
part
*►
Position
control part
Velocity
control part
Current
control part
Power
control part
Motor
i
i
i
i
j
Veloc
Itv
. Current
siwnal
iignal
!
Position signal
i
^
/
Fig. 5. Mechatronic servo system structure
5.1 The comprehensive presentation of three multiobjective problems
The overall design problem may be considered mMOOP with divided into three MOOPs as
outlined in Fig.6.
MOOP : optimise /(>;)  [/; (■*)> M*)   f P {x)\ subject to x € 3C
t
1 ,
h
fc
MOOP 1 : optilu i,e / ; (x) = [f( (x), /fa)]
X
1
*
MOOP 2 : optimise / 2 (x) = [/?(x),/(x)]
subject to f l (x) < f l (x 1 ) + e i
xeX
i 2
r~
i
MOOP 3 : optimise / 3 (x) = [ff(x), /(x)]
subject to f 2 (x) < f 2 (x 2 ) 4 e 2
xeX
3
.1
L
Fig. 6 The epsilon tolerance integration of the mMOOP with distinct contexts
The control goals may be easily organised in the same manner as presented in Fig.5. It is
realistic, from engineering point of view, to consider position control part of the design as
the most important one. This loop is responsible for the following the reference path with at
last two conflicting targets  fast transients and small overshoot combined with the zeroing
steadystate error. The position control loop supervises velocity signal control.
The dynamics of this subsystem also has at least two conflicting objectives.
356 Automation and Robotics
The most inner part of the presented in Fig. 5 servo system structure has the most complex
dynamics forced by the pulsewidth modulation control of the permanent magnet
synchronous motor. Unlike the mechanical control loops (i.e. Velocity signal, and Position
signal), this one has to be modeled by discretetime model with time constants of several
microseconds.
The mMOOP interaction between multiobjective designs takes into account some
tolerance s, which improves robustness of the solution (Engau & Wiecek, 2007) and is
realised according to the coordination scheme outlined in Section 4 (see Fig.4).
6. Conclusions
This study contributed a novel formulation to the emerging research area of
the optimisation methods  the multiple multiobjective optimisation problem. It is
an extension of the multiobjective optimisation ideas to the set of concurrent multiobjective
optimisation problems defined by changing the environment conditions  the context.
In this study, the burden of high dimensional multiobjective optimisation problem (as
discussed in Sect. 3) is relaxed by considering aggregation of the constraintbased criteria
with conditions for operational goalbased objectives.
The Pareto optimal solutions of the multiple multiobjective optimisation problem are
evaluated without introducing ordering of the multiobjective optimisation problems.
The shared decision space of multiobjective optimisation problems is considered as
a connecting bridge between all multiobjective optimisation problems.
As an example from the control servo system design, the redundant robot design problem is
outlined for further research.
In the future work, we intend to further investigate the information that can be obtained
from the proposed tradeoff and sensitivity analysis. In view of the current approach, we are
aware of the remaining weakness that this information only allows a local tradeoff
assessment, and thus cannot be used for more accurate estimates in a larger region of
the outcome space.
We would also like to address remaining issues such as computational benchmarking or
further analysis of effects from grouping and ordering of objectives using examples from
the industry. We believe that such future efforts will further improve the recognised
features of the current method and eventually provide an effective and flexible decision
making tool for multiobjective design optimisation.
7. References
Avigad, G. (2007). multiMultiObjective Optimization Problem and Its Solution by
a MOEA, Proceedings of the 4th Conference on Evolutionary MultiCriterion
Optimization  EMO 2007, Obayashi S. et al. (Eds.), pp.847861, ISBN 9783540
709275, Matsushima, Japan, March 58, 2007, Springer, Berlin
Brockhoff, D. & Zitzler E. (2006). Are All Objectives Necessary? On Dimensionality
Reduction in Evolutionary Multiobjective Optimization, Proceedings of the 9th
Conference on Parallel Problem Solving from NaturePPSN IX, Runarsson, T.P. et al.
Multiple MultiObjective Servo Design  Evolutionary Approach 357
(Eds.), pp. 533542, ISBN 9783540389903, Reykjavik, Iceland, September 913
2006
Coello Coello, C.A. ; Lamont, G.B. & Van Valdhuizen, D.A. (2007). Evolutionary Algorithms
for Solving MultiObjective Problems (2»* Ed.), ISBN 97803873325493, Springer,
Berlin
Deb, K. (2001) MultiObjective Optimization Using Evolutionary Algorithms, Wiley, ISBN 9780
471873396, Chicester, UK
Deb, K. & Saxena, D.K. (2005) On finding paretooptimal solutions through dimensionality
reduction for certain largedimensional multiobjective optimization problems.
Technical Report KanGAL Report No. 2005011, Kanpur Genetic Algorithms
Laboratory, 2005
Engau, A. & Wiecek, M.M. (2007). 2D decisionmaking for multicriteria design optimization,
Structural and Multidisciplinary Optimization, Vol.34, No.4, (Oct. 2007), pp. 301315,
ISSN 1615147X
Fleming, P. J.; Purshouse, R. C. & Lygoe, R. J. (2005). ManyObjective Optimization: An
Engineering Design Perspective, Proceedings of the 3rd. Conference on Evolutionary
MultiCriterion Optimization  EMO 2005, Coello Coello, C. A. et al. (Eds.), pp. 1432,
ISSN 03029743 Guanajuato, Mexico, March 2005
Konak, A. ; Coit, D.W. & Smith, A.E. (2006). Multiobjective optimization using genetic
algorithms: A tutorial, Reliability Engineering and System Safety, Vol.91, pp.9921007,
Sept.2006
Pholsiri, C. (2004). Taskbased decision making and control of robotic manipulators
Ph.D. Thesis, University of Texas at Austin, 2004, Available at :
https://www.lib.utexas.edU/etd/d/2004/pholsirid74234/pholsirid74234.pdf
Ponweiser, W. & Vincze, M. (2007) "The Multiple Multi Objective Problem  Definition,
Solution and Evaluation, Proceedings of the 4th Conference on Evolutionary Multi
Criterion Optimization  EMO 2007, Obayashi, S. et al. (Eds.), pp. 877892, ISBN 978
3540709275, Matsushima, Japan, March 58, 2007, Springer, Berlin
Purshouse, R. C. & Fleming, P. J. (2003) An adaptive divideandconquer methodology for
evolutionary multicriterion optimisation, Proceedings of the 2nd Conference on
Evolutionary MultiCriterion Optimization EMO 2003, Fonseca, CM. et al. (Eds.),
pp. 133147, ISBN 9783540018698, Faro, Portugal, April 811, 2003, Springer,
Berlin
Qingfu, Z. & Hui, L. (2007) MOEA/D: A Multiobjective Evolutionary Algorithm Based on
Decomposition, IEEE Trans on Evolutionary Computation, Vol. 11, No. 6, (Dec. 2007),
pp.712731, ISSN 1089778X
Shukla, P.K. & Deb, K. (2007) On finding multiple Paretooptimal solutions using classical
and evolutionary generating methods, European Journal of Operational Research,
Vol.181, No. 3, (Sept 2007), pp.16301652, ISSN 03772217
Wozniak, P. (2007a) Dimensionality Reduction in Evolutionary Multiobjective Design: Case
Study, Proceedings of the 9th annual conference on Genetic and evolutionary computation
GECCO2007, Thierens et al. (Eds.), pp. 913915, ISBN 9781595936974
Wozniak, P. (2007b) Multiple MultiObjective Optimisation of Servomechanism Control
Systems Design  Evolutionary Approach, Proceedings of the 13th IEEE International
358 Automation and Robotics
Conference on Methods and Models in Automation and Robotics MMAR
2007, Emirsajlow, Z. (Ed.), pp. 379385, Szczecin, Poland, August 2730, 2007
Wozniak, P. & Witczak, P. (2007). Dimensionality Reduction in Evolutionary Multiobjective
Design of Permanent Magnet Generator, Proceedings of the 4th Conference on
Evolutionary MultiCriterion Optimization EMO 2007, Obayashi S. et al. (Ed.),
pp. 6368, LBP, Matsushima, Japan, March 58, 2007
21
ModelBased Control of a Nonlinear One
Dimensional Magnetic Levitation with a
PermanentMagnet Object
Zhenyu Yang, Gerulf K.M. Pedersen and J0rgen H. Pedersen
Esbjerg Institute of Technology, Aalborg University
Denmark
1. Introduction
The Electromagnet levitation technique has been popularly used in transport and industrial
felds in recent decades, such as highspeed levitation trains, frictionless magnetic bearings,
and high precision control in semiconductor manufacturing (CST (1996); Kim et al. (1998)).
Due to its high efficiency and good environmental orientation, the application of this
technique is extensively growing. For instance, the attitude of a smallsized satellite can be
efficiently controlled by using the electromagnetic force generated from the interaction
between the on board (controlled) electrical field and the earth magnetic field (Wisniewski
&Stoustrup(2004)).
j. ma
(a) Conventional structure (b) Considered structure
Fig. 1. Principles of conventional and considered levitation systems
The principle of electromagnetic levitation can be illustrated by a simple onedimensional
system as shown in Fig.l (a). By controlling the electric current flowing through coils
around a solenoid, a conductible object, e.g., an iron or a steel ball, can be possibly levitated
by the generated magnetic force. However, to develop a reliable and efficient levitation
system is far from easy with respect to the fact that this kind of system is featured by
360 Automation and Robotics
complexity, nonlinearities, natural instability and large electromagnetic uncertainties
(Gentili & Marconi (2003); Kim (1997); Thompson (2000); Varella et al. (2004)).
A planar levitation system was investigated in (Kim (1997); Kim et al. (1998); Thompson
(2000)). By conducting AC current through a diskshaped insulated coil, the coil can be lift
off above a wide aluminum plate. The realized system is stable but underdamped without
feedback control. The thermal problem is also investigated in (Thompson (2000)), and it
turned out that the coil resistance increased significantly with the increase of temperature,
which means that the system required more power in order to keep the levitated object at
the same height when the temperature increases. As a consequence, the test setup can only
be run for a few second at a time (Thompson (2000)). In order to control the levitated object's
position and overcome the underdamping issue, a feedback mechanism is often required.
The feedback control of a laboratorysized onedimensional levitation system is discussed in
(Wong (1986)), and an analog lead compensator was developed using standard frequency
response methods. Some application of advanced control methods such as the robust control
and integrator back stepping for magnetic bearing control can be found in (CST (1996)) and
references therein. As we observed that most existing controllers are designed based on
some kind of linear/ linearized models and therefore linear. Measurements of the levitated
object position and the current through the coil are often required by these controllers.
By focusing on the onedimensional levitation, the comparison of system performances
under a linear controller and a nonlinear controller was investigated in (Barie & Chiasson
(1996)). The nonlinear controller was developed by using feedback linearization based on a
nonlinear model (Isidori (1989)). It showed that both controllers resulted more or less same
system performances in terms of tracking capability for steptype references. However, the
nonlinear controller is more sensitive to quantization error (e.g., 8 bit or 12 bit A/D
convertors) in the current measurement. Regarding the sinusoidtype references, it turned
out that the nonlinear controller resulted much better tracking performance than the linear
controller did. However, the development of nonlinear controller heavily depends on the
precision of available mathematical model. From practice point of view, no matter what
kind of controller will be used, the thermal dynamic (heating coil) is always a critical
concerning issue (Sonderskov & 0stero (2007); Thompson (2000); Yang & Pedersen (2006);
Yang etal. (2007)).
Different from most existing onedimensional levitation systems which use a conductible
ball or coil as the levitated object (Barie & Chiasson (1996); Gentili & Marconi (2003);
Oliveira et al. (1999); Wong (1986); Yang & Pedersen (2006), here we consider a one
dimensional levitation system with a permanent magnet object instead, i.e., a small NIB
(Neodymium, Iron, Boron) magnet is glued at the inside top of a plastic ball as shown in
Fig.O (b). The main benefits of this configuration lie in the following perspectives:
• The solenoid's overheating problem is moderated. It is known that a large magnetic
field is often required to levite a conductible object even with a relatively small
operating range. It means that the coils must provide a large amount of current which
directly leads to the heat dissipation problem (Thompson (2000)). Instead of purely
depending on the coils, the magnetic field generated in the proposed configuration
consists of contributions from the permanent NIB magnet as well as the contribution
from coils around the solenoid.
• The system's operating range is enlarged under the same solenoid condition compared
with the standard configuration (with conductible object). The magnetic field is
ModelBased Control of a Nonlinear One Dimensional Magnetic Levitation with
a PermanentMagnet Object 361
considerably enhanced due to the contribution from the NIB magnet. In our constructed
system the NIB contributes 45 times more flux density than the solenoid operating at
the maximal current (S0nderskov & 0stero (2007); Yang et al. (2007)).
However, the payoff of the above benefits is the complexity. The proposed configuration
makes modeling and control of this kind of levitation system much more complicated
regarding the fact that a permanent magnet is attached on a moving object (Simpson (1999)).
This paper will explore the modeling, control and implementation of the proposed levitation
system. First of all, the magnetic field generated by the moving NIB is experimentally
investigated and modeled. Then a nonlinear model of the entire system is derived. System
parameters are identified using some experimental ways. Afterwards a set of PID controllers
are designed via trialanderror method and automatic tuning using genetic algorithms,
respectively. The developed controllers are implemented in the PCsupported LabView
environment. The experimental tests show some good system performances. The rest of the
paper is organized as: Section 2 gives a brief description of our benchmark system; Section 3
derives the nonlinear model of the considered system and then identifies the system
coefficients by experiments; Section 4 analyzes the PID control design, automatic tuning and
implementation issues; Section 5 discusses experimental results and we conclude the paper
in Section 6.
2. Experimental apparatus
A onedimensional levitation system is constructed using an aluminium framework as
shown in Fig. 2. The electromagnet device consists of a solenoid with an iron core which is
composed of thin steel plates riveted together. The levitated object is a plastic ball with
diameter of 2 cm. There is a small NIB magnet glued to the top inside the ball, and a M4 nut
glued to the bottom acting as the counterweight to the NIB magnet. On the sides of the
framework, slits are milled for ease of mounting and adjustment of the optical sensor
system.
Fig. 2. Experimental laboratory setup
2.1 Position sensor
An optical sensor system for measuring the distance between the solenoid bottom and the
levitated ball is developed using two LEDs (IR333A) and a photodiode array (Hamamatsu
16 element Si photodiode array, type S56681). The sensor system is mounted inside an
362
Automation and Robotics
aluminium house with a milled slit facing to the possible operating range. As shown in
Fig. 3., when the ball enters the detectable area, it casts a shadow on the photodiode array
which leads to changes of currents. By measuring these currents, the position can be
LI I
estimated by x L where h and h are the currents through the photodiodes as
2/ 2+ 7,
shown in Fig. 3. a: is the upper boundary of the shadow on the position sensor, and L is the
length of the detectable area, which is 6mm in our case. The measured current is converted
to a voltage through the diagram as shown in Fig. 4.
i li'i:;iiitta
12
M
:..■. j—
T W
J»*ifc 
M I 111 I I linTTT
V///////S//////A
Fig. 3. Principle of the position detection
Fig. 4. Currenttovoltage conversion of the sensor measurement
2.2 Current generator
The current control scheme (Yang & Pedersen (2006)) is employed for the control purpose
instead of the conventional voltage control (Barie & Chiasson (1996); Oliveira et al. (1999);
Wong (1986)), such that the current drifting problem due to the thermal dynamic of the
solenoid can be avoided. The basic scheme of the proposed current control is shown in
Fig. 5. A digital toanalog converter named AD7523 (Intersil) is used to converter the digital
control signal into a analog voltage signal with a span of 200m V . Through the opamp U3B
(TL082) a new voltage signal with a span of 5 V is generated and used to control the open
and close of the MOSFET transistor IRFZ44. In order to protect the MOSFET transistor
IRFZ44 from the high voltage peaks, a varistor S14K30AUTO is placed between the drain
and ground (Sonderskov & 0stero (2007)).
ModelBased Control of a Nonlinear One Dimensional Magnetic Levitation with
a PermanentMagnet Object
363
J V5 . V6
± 15V dc 4Vdq^
Fig. 5. Diagram of the current generator
2.3 LabView environment
The control algorithm is implemented in the National Instruments (NI) LabView
environment for Windows XP. A Data Acquisition (DAQ) card typed NI PCI 6229 is used as
the interface between the physical hardware and the LabView software. More information
can be found in (S0nderskov & 0stero (2007)).
3. Modeling and identification
The entire magnetic field in the considered setup consists of two distinguished parts:
contribution from the permanent NIB magnet attached on the ball, and contribution from
the solenoid when electric current flows through it. This magnetic field can be expressed as
B f = B c . + Bh
a)
where B t is the total magnetic field, B c is the magnetic field induced by the solenoid, and
B b is the field induced by the NIB magnet. In the following, the feature of B & is first
investigated based on the setup. Then the total field B t is analyzed using a theoretical
approach. System parameters are identified through experiments.
3.1 NIB magnetic field B b
The NIB magnetic field is investigated through an experiment way. It is obvious that the
magnetic field B & will be influenced if the distance between the solenoid and the ball
becomes smaller even without any current running in the coils around the solenoid
(Woodson & Melche (1968)). Thereby we define the magnetic field generated by the NIB
magnet as a function of the distance between the bottom of the solenoid and the top of the
ball, denoted as B &(#), where x is the mentioned distance. This magnetic field function can
364
Automation and Robotics
be measured by attaching a Hall Effect sensor at the top of the ball and manually moving
the ball up or down within the possible working range. One measurement is shown in
Fig. 6. By using the curve fitting technique, a 4th order polynominal is obtained as
B b (x
a^x
a^x 3 + a<ix 2 4 a\x + a () .
(2)
with coefficients listed in Table. 1. In the following, equation (2) is used as the model of NIB
magnetic field.
Fig. 6. Measured magnetic field generated by NIB via distance
CLq
0.1417
fll
0.1196 x 10" 1
&2
0.6905 x 10 2
a 3
0.1794 x 10 4
0,4
0.1734 x 10 5
Table. 1. Coefficients of Bb(x) induced by NIB magnet
3.2 Nonlinear system model
Under assumption that the used material has a linear characteristic, i.e., the magnetization
density only depends on the magnetic field density (Woodson & Melcher (1968)), the
magnetic flux of the entire field, denoted as A (t), can be approximated by
X(t)=L(x(t))i(t) + X B (x(t)),
(3)
where i(t) denotes the current through the solenoid, and x (t) denotes the displacement of
the levitated object to the solenoid bottom. L(x) denotes the inductance when the levitated
object is assumed to be iron/ steel and it can be regarded as a function of x (t) (Wong (1986);
Yang & Pedersen (2006)). Xb(x) is the flux introduced by the NIB magnet, and it also is a
ModelBased Control of a Nonlinear One Dimensional Magnetic Levitation with
a PermanentMagnet Object 365
function of x(t) as we find out in eq.(2). By using the proposed approximation in (Wong
(1986); Oliveira et al. (1999); Yang & Pedersen (2006)), L(x) can be expressed as
L{x) =L X + Y^zTy ( 4 )
where Lo = L(0)  L(oo), Li = L(oo) and a is a constant coefficient.
According to the electromagnetic theory (Woodson & Melcher (1968)), the magnetic co
energy, denoted as W, can be calculated as
i(t)
W(t)= I ' \(%,x(t))dl (5)
o
By inserting (3) and (4) into (5), there is
1/r , £p v2
W ® = 2 (Ll + T^h *'*® + A *(*(*))<(*) (6)
The introduced magnetic force, denoted as f(t), is determined from the magnetic coenergy
according to
where x fl represents the force acting axis, which is equal to the x(t) axis. Then from (6) we
have
1 L i 2 (t) d\ B (x(t))
f{t) ~ 2 a( i + ^))2 + ^d^ i(i)  ( 7 )
Assume that the magnetic flux Xb(x) and the magnetic flux density have a constant linear
relationship. It could be reasonable if the considered system only has small moving distance.
There is
X B (x)=/3 B B b (x) 9 (8)
dX (x}
where Bb(x) is the value calculated from equation (2). Therefore, — can be
dx
approximated by
= 4a 4 x + 3a 3 ar + 2a 2 x + a i; (9)
c/;r
366 Automation and Robotics
with coefficients given in Table 1.
Denote the mass of the levitating object as m and the gravity acceleration as g. By neglecting
the air drag friction, the dynamic of the levitating object can be obtained from Newton's
Second Law as
d 2 x(t)
m^k 1 =rng + f(t).
By inserting (7) into the above equation, there is
d 2 x{t) 1 L i 2 (t) d\ B (x(t)) ....
™^ = mg ~ 2 a( i + gl)2 + "^— l{t)  W
Compared with models used in (Barie & Chiasson (1996); Oliveira et al. (1999); Pedersen &
Yang (2006); Wong (1986); Yang & Pedersen (2006)), the third term on the right side of
equation (10) is new and it is due to the existing of the permanent NIB magnet.
Through circuit analysis, the electrical perspective of the solenoid can be modeled as
at at
where R is the coil resistance, and u(t) is the input voltage to the coil. Compared with
models used in (Barie & Chiasson (1996); Oliveira et al. (1999); Pedersen & Yang (2006);
Wong (1986); Yang & Pedersen (2006)), the second term on the right side of (11) is new, and
it is the EMF induced by the permanent NIB magnet.
By taking relationship (8) and substituting (4) and (2) into (11), there is
di(t) aR + Rx{t) aL dx(t)
~dt~ = aL(0) + Lirc(£)^ + (a + x(t))(aL(0) + L^t)) 1 ^ dt
a + x(t) . .
+ aL(0) + L lX (t) uW
 itt X L%) (iaiX ' {t) + 3 ° 3x2(() + 202X(t) + 0l) 1r < 12 >
Without triviality, if a small operating range is considered, the inductance (4) can be
approximated by a constant value (L = 0.1398H). In addition, by taking the linear part of
\b(x), a linear version of equation (12) can be derived as
u(t) = Ri{t) + L^+/3 B a 1 ^ (13)
which is similar to a simplified linear DCmotor model (Woodson & Melcher (1968)).
Equations (10) and (12) constitute of a nonlinear model of the considered levitation system.
ModelBased Control of a Nonlinear One Dimensional Magnetic Levitation with
a PermanentMagnet Object
367
Compared with models used in (Barie & Chiasson (1996); Oliveira et al. (1999); Pedersen &
Yang (2006); Wong (1986); Yang & Pedersen (2006)), here the influence of the NIB magnet is
reflected by the extra force in (10) and the EMF part in (12), respectively.
3.3 Coefficient identification
System coefficients Lo, L(0) and L\ used in (4) can be directly measured or estimated.
However, coefficients a and (3b in (10) need to be identified through an experimental
approach similar to those used in (Oliveira et al. (1999); Yang & Pedersen (2006)). A set of
experiments is organized to find the currents required to levitate the object at different
equilibrium positions. The result is plotted in Fig. 7.
Fig. 7. The equilibrium points and corresponding required currents
By picking up three close equilibrium points and their corresponding currents, denoted as
xi, X2,X3 and ii, ii, i$, respectively, from (7) there is
i L q
2a(l + ^) a
&BBb(xi)ii
1 Loil
2a(l + »)2
(3BB b {x 2 )i2,
and
^r  /? B Bb(*i)ii = I n L *%  P B B b (xi)h.
2a (l + ^)2 ra ^ L ' * 2a(l + ^) 2
Coefficient a can be calculated by combining the above two equations. After a is determined,
(3b can be determined based on any set, e.g., set (xi, ii). A simple way to determine a is to
assume the term /3b Bb (a&) i* is almost constant for k = 1, 2, 3. This assumption is reasonable
for a small operating range, so a can be determined by
a =
t2Xi  I1X2
(14)
Correspondingly, /3b can be determined by
368
Automation and Robotics
Pb
rnn J l L °'*
Bb(xi)ii
(15)
Average values of obtained a and (5b and other directly measured coefficients are listed in
the Table 2.
Description
Symbol
Value
Unit
Coil inductance
L x
2.0xl0" :i
H
Coil resistance
R
0.8
Inductance
Lo
0.99 xlO" 3
H
Mag. ind. coeff.
a
1.18
m
Mass of object
m
4.27x 10" 3
kg
Flux coeff.
P
0.065
Table 2. Parameters used in the considered system
Due to the considered levitation system being naturally unstable and having a very fast
response, it is difficult to validate the developed model directly. Therefore, a simple PID
feedback controller is developed to keep the considered system operating properly. The
mathematical model is validated by comparing the simulated closedloop control system
and the real controlled system afterwards (Yang et al. (2007)).
4. Design and implementation of PID controllers
4.1 Empirical PID controller
By using the obtained nonlinear model, an analog PID controller is developed and manually
tuned based on the ZieglerNichols PID tuning method. Then the developed PID controller
is discretized with a sampling frequency of 480 Hz, which is determined by the NI DAQ
card used for the digital implementation. The implemented controller has the form
u(k) = u(k  1) + K p (l +  + y) < k )
K p (l + 2^) e(k  1) + K p ^e(k  2) ,
(16)
where T, K p , Ti and Td are sampling period, P, I, and D coe±cients, respectively. e{k) is the
displacement tracking error. The simulation of the closedloop control system using the
empirical PID controller is shown in Fig. 8. It can be observed that the controlled system has
a reasonable response time and good tracking capacity.
4.2 Automatic tuning of PID controller using GA algorithms
From our preliminary investigation (Pedersen & Yang (2006); Yang & Pedersen (2006)), it
turned out that the PID controller can be automatically tuned using the multiobjective non
dominated sorting genetic algorithm (NSGAII) based on the nonlinear system model.
ModelBased Control of a Nonlinear One Dimensional Magnetic Levitation with
a PermanentMagnet Object
369
The performance induced by different PIDcontroller parameters are evaluated by the
ollowing criteria based on the step response:
Overshoot (M p );
Rise time (t r );
Settling time (t s ); and
Integrated absolute error (IAE).
An illustration of the performance measures is given in Fig. 9. Each of these performance
measures will be included as objectives to be minimized as their interdependence will
depend highly on the nonlinear system expressed by (10) and (12).
Step Respons
Fig. 9. Performance measures for step response
The nondominated sorting genetic algorithm (NSGAII) developed in (Deb et al. (2000)) is a
multiobjective algorithm, which can evolve a set of nondominated solutions that are all
equally well suited for solving the specific problem given the performance measures
specified. Many of the NSGAII runtime parameters used for here are the same as the
NSGAII default values (Pedersen & Yang (2006); Yang & Pedersen (2006)), such as
Description
setting
Crossover probability
Mutation probability
SBX parameter
Mutation parameter
Rigid bounds
0.9
0.33
10
50
1 (yes)
Table. 3. Parameters used for running NSGAII
In the simulation, The range for K p is set to [1000,0]. The ranges for T; and T^are both set to
[0,15]. With respect to the computational complexity of the simulations, a population size of
50 individuals was chosen along with a maximum number of generations of 150. Besides
from the use of the 4 objectives a constraint on the allowable amount of overshoot has also
been formulated as only values below 100% was allowed. The distribution of K p/ T/ and Td
for the case where the outliers have been removed is illustrated in Fig. 10.
It is quite obvious that there is a large grouping of individuals for small values of Ti and K p
values below 800. A simulation of a typical controller from this cluster, with parameters as
K p = 800.46, Ti = 0.021 and T d = 0.06, is shown in Fig. 11.
The corresponding performance measures for this individual are IAE=5 • 10 4 , M p = 84.82%,
t r = 21ms and t s = 0.425s. It can be observed that the system response consists of a fast
370
Automation and Robotics
oscillation on top of a slower one. The fast rise time is mainly due to the size of K p which is
obviously very aggressive towards positional errors.
0.09^
0.08.
0.07.
0.06.
"'"** +
0.05.
0.04.
... ++ + ■
+ + +
+ + +)+■
Fig. 10. Plot of parameters K p , T* and T^for last generation
0.8 0.9 1
Time (s)
Fig. 11. System step response in simulation
4.3 LabView Implementation
The developed controllers are implemented in NI LabView environment on a PC running
Windows XP. Therefore some attention needs to be paid on the realtime issues. For
instance, the connection between the external devices and the LabView environment is
setup manually, even though the DAQ assistant in LabView could more easily create the
ModelBased Control of a Nonlinear One Dimensional Magnetic Levitation with
a PermanentMagnet Object
371
communication line. However, our experiences showed that the DAQ Assistant is quite time
consuming, no matter if it is used inside or outside the timed loop (S0nderskov & 0stero
(2007); Yang et al. (2007)). Another realtime issue relevant to the Windows XP operating
system. It is well known that Windows XP gives priority to different processes that are
executed. For example, just moving the mouse is sometimes enough to slow down the
execution of LabView code. In order to solve this realtime problem, the timed loop
structure is used in the LabView program, which guarantees that the LabView code should
be executed within the defined time period. Furthermore, In order to check the sampling
rate issues, a sampling frequency calculator is constructed as shown in Fig. 12. A front panel
of the developed controller is shown in Fig.13.
5ampling frequency calculator!
[DAQ loop count i_
b'AQ Hz I
1 £51111 1
nv
FID loop count 
iPBLl
©
■P
DAQ loop count! PIP loop count 
Ei55~l Ei32~l
DAQ Hz
498,667
PIP Hz
499,048
1
Fig. 12. Sampling frequency calculator with front panel indicators
Control Panel of MAIECO
Use the Sf> sfcder to move the ball.
The PID parameters ar& set by default,
changjno: them wfl affect the
performance of the controller.
o,oois
o,ooi
0,001
o # oois
I
I
Cod On/Off
DAQHz
498,667
PID HZ
499,048
Data loogang
Kp
0,2
yJ0,07
Kd
0,03
Sample rate PID
' o, non
stop
 STOP 
Fig. 13. Front panel of the developed controller
5. Testing results and discussions
The simulated performance of the closedloop control system using the empirical PID
controller is shown in Fig. 8. The same controller is implemented in the LabView program
and tested with the physical setup. One test result based on the same set of setpoints as for
simulation is shown in Fig. 14. It can be observed that in principle the controlled physical
372
Automation and Robotics
system has quite similar performance as the simulation model. However, it is also obvious
that the controlled physical system has much shorter response time and much larger
overshot and oscillation compared with the simulated system performance. The reasons for
these deviations could be explained in the following perspectives:
• Imprecise sensor measurement. The optical position sensor is very sensitive to light
disturbances;
• Frequent switchings of the MOSFET IRFZ44. The frequent onoff switchings of current
due to this MOSFET can directly lead to oscillations in real tests (Yang et al. (2007));
• Imprecise sampling rates of DAQ card and PID computation due to the realtime
problem of Windows XP operating system. This could cause synchronization problems
in data acquisition and control computation;
• the approximation of system coefficients. For example, in a strict sense, the system
coefficient /3b should be displacement dependent. However, we assume it is always
constant due to simplicity.
The consistency between simulation and real tests could be improved if above problems
could be solved or moderated. By softly changing the setpoints, e.g., filtering the
rectangular set points, the controlled physical system shows a better performance as shown
in Fig. 15. It can be observed that the large overshot that appeared in Fig. 14 has
disappeared.
System test with shifting Setpoint
'&. 2
1
i
to
§2
i
Ball position
 Setpoint
o V*/vvv\
0v/*A*V\
,
Fig. 14. Response of the controlled physical setup
One test result using the same control coefficients directly from NSGAII tuning is shown in
Fig. 16. Compared with the simulation result shown in Fig. 11, this implemented controller
has quite similar behavior as simulation study. However, it is also obvious that the fast
dynamic has much larger amplitude than it does in simulation, which could be due to the
following facts:
• The designed closedloop system is obviously underdamped;
• The influence from the external disturbances, e.g., the air flow around the ball etc;
• Model uncertainties and unprecise position measurements.
More analysis of these issues will be one part of our future work.
ModelBased Control of a Nonlinear One Dimensional Magnetic Levitation with
a PermanentMagnet Object
373
System t*s1 with si iff ng Selpomt
Fig. 15. Response of the controlled physical setup with soft changes
Fig. 16. Step response of the controlled setup using the NSGAII tuned controller
6. Conclusion
The modeling and control of a 1D magnetic levitation system with a permanent magnet
object is investigated. The feature of the moving permanent magnet is explored using an
experimental method and it is modeled through curve fitting technique. The entire system
model is derived based on the electromagnetic theory and afterward system coefficients are
identified through designed experiments. The developed model is validated through
performance comparison of the closedloop model and the controlled physical system.
The PID control is chosen as the control structure at this stage regarding the fact: (1) it is
simple and require few computation resources; (2) The developed PID controllers only need
the position information, with no need for the current measurement and speed estimation,
such that the potential degradation of the system performance due to quantization (Barie &
Chiasson (1996)) can be minimized;
The developed controllers are implemented in the Lab View environment based on a PC
running Windows XP. The realtime issues are managed by additional programs. Both
simulation and real tests showed a clear consistency and a good system performance.
Furthermore, The investigation of using genetic algorithms to automatically tune PID
controller shows a potential to use this artificial intelligence method for supporting the
control design for complicated nonlinear systems.
374 Automation and Robotics
7. Acknowledgement
The authors would like to thank Rene M. S0nderskov, Kim S. 0stero, Niels A. Pedersen,
Stefan K. Greisen and Jette R. Hansen for their contributions in system development and
laboratory tests.
8. References
Special issue on magnetic bearing control. IEEE Control Systems Technology, Sept 1996.
W. Barie and J. Chiasson. Linear and nonliear statespace controllers for magnetic levitation.
Int. J. of Systems Science, 27(11) :1153~1163, 1996.
K. Deb, A. Pratap, and S. Moitra. A fast elitist nondominated sorting genetic algorithm for
multiobjective optimization: Nsgaii. Parrallel Problem Solving from Nature 
PPSN VI, pages 849858, 2000. NSGAII code available at KanGAL website:
http://www.iitk.ac.in/kangal.
L. Gentili and L. Marconi. Robust nonlinear disturbance suppression of a magnetic
levitation system. Automatica, (39):735742, 2003.
A. Isidori. Nonlinear Control Systems. New York: Springer Verlag, 1989.
W. Kim. HighPrecision Planar Magnetic Levitation. Phd thesis, Massachusetts Institute of
Technology, June 1997.
W. Kim, D.L. Trumper, and J.H. Lang. Modeling and vector control of planar magnetic
levitator. IEEE Trans, on Industry Applications, 34(6):12541262, Nov/Dec 1998.
V.A. Oliveira, E.F. Costa, and J.B. Vargas. Digital implementation of a megnetic suspension
control system for laboratory experiments. IEEE Trans, on Education, 42(4):315322,
Nov. 1999.
G.K.M. Pedersen and Z. Yang. Multiobjective pidcontroller tuning for a magnetic
levitation system using nsgaii. In Maarten Keijzer, editor, Proceedings of Genetic
and Evolutionary Computation Conference  GECC0 2006, pages 17371744, Seattle,
Washington, USA, Jul 2006. ACM.
T.L. Simpson. Effect of a conducting shield on the inductance of an aircore solenoid. IEEE
Trans, on Magnetics, 35(1)508515, Jan 1999.
R.M. Sonderskov and K.S. 0stero. Malecos: Magnetic levitation control systems. 7th
semester project report, Aalborg University Esbjerg, Denmark, Jan 2007.
M.T. Thompson. Electrodynamic magnetic suspension  models, scaling laws, and
experimental results. IEEE Trans, on Education, 43(3):336342, Aug. 2000.
M. Varella, E. Calloni, L.Di Fiore, L. Milano, and N. Arnaud. Feasibility of a magnetic
suspension for second generation gravitational wave interferometers. Astroparticle
Physics, (21):325335, 2004.
R. Wisniewski and J. Stoustrup. Periodic h2 synthesis for spacecraft attitude control with
magnetorquers. Journal of Guidance Control and Dynamics, 27(5):874881, 2004.
T.H. Wong. Design of a magnetic levitation control system  an undergraduate project. IEEE
Trans, on Education, E29(4):196200, Nov 1986.
H. Woodson and J. Melcher. Electromechanical Dynamics  part I: Discrete Systems. Wiley,
New York, 1968.
Z. Yang and G.K.M. Pedersen. Automatic tuning of pid controller for a 1d levitation system
using a genetic algorithm: a real case study. In Proceedings of the 2006 IEEE
International Symposium on Intelligent Control, pages 30983103, Munich,
Germany, Oct 2006. IEEE.
Z. Yang, G.K.M. Pedersen, and J.H. Pedersen. Modeling and control of onedimensional
magnetic levitation system with a permanentmagnet object. In Proceedings of the
13 th IEEE/ IF AC International Conference on Methods and Models in Automation
and Robotics, pages 723729, Szczecin, Poland, Aug 2007. IEEE.
22
Nonlinear Adaptive TrackingControl Synthesis
for General Linearly Parametrized Systems
Zenon Zwierzewicz
Department of Applied Mathematics
Szczecin Maritime University
Poland
1. Introduction
A common problem of engineering practice is to cope with mathematical models of objects
with only partly known structure. The model may e.g. involve some unknown (linear or
nonlinear) functions that depend on the kind of object (of a given class to which the model
refers) and/ or of its operation conditions. As an example we take an affine model of SISO
system
x = a(x) + fi(x)  U (la)
y = h(x) (lb)
where y, x, u denote output, state and control variables respectively, a and /fare smooth
vector fields on R n and h:R n —> R a smooth function. It is assumed here also that the
functions a and p are unknown or may be estimated with a considerable inaccuracy.
Considering the system (1) it is possible (under certain conditions (Fabri &
Kadrikamanathan, 2001; Sastry & Isidori, 1989)) to obtain a direct inputoutput relation
between u and y, by successive differentiation y with respect of time having
y {r) =f(x) + g(x)u (2)
where r denotes a system relative degree. The whole approach could be well systematized
and explained using the concept of Lie derivatives (Isidori, 1989) .
In this chapter the system (1) is uncertain in the sense it is linearly parametrized, or in other
words, the unknown functions on and fi are assumed to be linear combinations of some
known model related functions which represents our elementary knowledge on the model.
It is easy to prove (see appendix) that if the functions on and /% of system (la) are of the
form of linear combinations of some known functions on and $ i.e.
«(*) = £«,«,. (*) ; /?(*) = £z>,/?,(x) ( 3 )
376 Automation and Robotics
where en, b\ are real unknown parameters then the scalar functions f , g of system (2) may
be represented in similar form:
f(x) = f J Olf i (x) + f (x) ; g(x) = f j 0fg i (x) + g o (x) (4)
1=1 1=1
with 0) , #f unknown parameters and f., g. (called here model basis functions) again
known trough the en and $ (see appendix).
There are a huge amount of nonlinear systems that might be modeled in general form (1),(3).
Using described above model transformation one can obtain a parametric model of the form
(2), (4) in relative easy way (see section 3.2). The model in this form, referred below as a
transformed model, was considered in many papers. One of the known method of tracking
control synthesis in the case when we have a rough estimate of the model (2) functions, is a
sliding mode control law (Slotine & Li, 1991). The alternative is to use adaptation (for model
in the form (2), (4)) which offers more subtle policy but requires more advanced theory.
In our approach the unknown functions / and g of the transformed model are, as it turned
out, linear combinations of some known model related basis functions i.e. some elementary
knowledge of the model is assumed. The assumption above may, however, be substantially
relaxed via applying, as basis functions, some sort of known approximators (Fabri &
Kadrikamanathan, 2001; TzirkelHancock & Fallside, 1992). As an example one may adopt a
neuroapproximator with Gaussian radial basis functions (Sanner & Slotine, 1992). Systems
of this sort are referred to as functional adaptive (Fabri & Kadrikamanathan, 2001) and
represent a new branch of intelligent control systems. In the realworld applications,
however, it seems purposeful to assume that we have at our disposal some (often very
limited) knowledge, on the considered plant or process, that should be exploited in
reasonable way. In this paper the accent is puton the later issue.
This chapter is concerned with the problem of adaptive tracking system control synthesis for
the described above class (1),(3) of uncertain systems. It has been proven that proportional
state feedback plus parameters adaptation via the model basis function concept are able to
assure system asymptotic stability. This form of controller permits online compensation of
unknown model nonlinearities which leads to satisfactory tracking performance. The
presented theory is illustrated by the example of ship pathfollowing control system
(Zwierzewicz, 2007ab).
It is worth to observe that affine model description (1) is taken here without loss of
generality. The general nonlinear system
x = F(x,u) (5a)
y = h(x) (5b)
may be easy expressed in this form by augmenting it with input integrator U = V which
leads to new state x a = \x T u\ • Now considering v as a new input the above system is in
the form (1).
The chapter is organized as follows. In section 2., an appropriate portion of the theory is
shortly presented, which utility (in the next section) is then verified via an example of ship
pathfollowing control system. The next sections contain results of the relevant system
simulations, remarks and conclusion.
Nonlinear Adaptive TrackingControl Synthesis for General Linearly Parametrized Systems 377
2. Adaptive tracking control synthesis
The control objective is to force the plant (1) output vector y = [y 9 y,'",y ] to follow a
specified desired trajectory y d = [y d , y d , • • • , y d ] with state vector x remaining
bounded. It is moreover assumed that reference input y d and its r derivatives are bounded
and known as well as that the system zero dynamics is globally exponentially stable
(minimum phase condition) .
As the model (1),(3) can be transformed to the form (2), (4) thus, in what follows, our
considerations will be referred to the later form.
2.1 The case of exact model
It is assumed in this section that the nonlinear functions /and g of model (2) are known and
g(x) ^ 0, Vx g R n • A substitution of control law
~/W + v (6)
in the system (2) results in exact cancellation of both nonlinearities ( f(x) and g(x) ) which
yields
y (r) = v (7)
To find control v(t) stabilizing this linear system, a standard poles location technique can be
used. If v is chosen as
v = y ( J ) M/'" l) W (8)
where yd denotes the reference input which y is required to track, e '.= y — y d denotes
the output tracking error and coefficients ju. are chosen such that
T(s) =: s r + jU r s r H h ju x s = is Hurwitz polynomial in the Laplace variable s, then the
tracking error and its derivatives converge to zero asymptotically, because the closedloop
dynamics reduce to the equation
e {r) + ju r e {r ~ l) + • • • + /u x e = (9)
which, by virtue of the choice of coefficients //. is asymptotically stable (Fabri &
Kadrikamanathan, 2001; Sastry & Isidori, 1989; TzirkelHancock & Fallside 1992).
2.2 The case with functional uncertainty
Let us consider now the case when functions / and g are unknown but have the form (4)
with 0. , / = 1, • • • n x , Of , i = 1, • • • n 2 unknown 'true 7 parameters and the f. (x) , g t (x)
known model basis functions. At time t our estimates of the functions / and g are
respectively
378 Automation and Robotics
f{x) = Y j e)(t)f i {x) + f (x); g{x) = f j 6f{t)g i {x) + g i) {x) (11)
1=1 i=\
with Q l , Q 2 standing for the estimates of the parameters Q l , Q 1 respectively at time t.
Since substitution in the system (2) the control law
u =  hx) + V (12)
no longer guarantees exact cancellation and whereby a resulting system linearity (like in the
former case (6)), we will proof below a useful here theorem. Prior to its formulation let us
define a sliding surface (Slotine & Li, 1991) which represents some (aggregate) measure of
the tracking error
S (t) = ri x e + — + r/ r _/ r ~ 2) + e {r ~ l) := W(e) (13)
as well as introduce some notations
ff = f J (o]9})f i {x)=e lT w x ; {gg)u = f j {efdf) gi {x)u=e 2T w 2 (i*)
i=l i=\
where
^l=[/l fl '" fn}> W 2 =bl §2 ••• g H2 t U ( 15 )
are model basis functions and
9 l =me\){e\ e\)] T , e 2 =m%)Wl %)? ( 16 )
are vectors of parameters.
Moreover = [o lT 2T J ; w = [wf w T 2 f .
The closedloop system (2), (12) and (8) after introduction of parameter update law,
= SW (17)
irgingtot/^).
Differentiating (13) and multiplying by a scalar k d we have
yields bounded y(t) asymptotically converging to y<i(t)
Proof:
e(t) + k d e(t) = k d %e + {k d t] 2 + %)e + • • • + (k d + J] n _ l )e' r  + e (r) =
= Ml e + M2 e +   M / r ~ l) + y"  yf = y (r)  v
(18)
The coefficients rji as well as k d should be selected so that jm should have the property
mentioned earlier, i.e. that they should ensure an asymptotically stable solution to equation
(9).
Nonlinear Adaptive TrackingControl Synthesis for General Linearly Parametrized Systems 379
Transforming now (12) and substituting in (2) yields
y (r) V = f + gUV (19)
y (r) v = f + gufgu = ff + (gg)u (20)
so we get the following error equation
e(t) = k d e(t) + ff + (g§> (21)
Making use of (14) the error equations (21) will take a form
e{t) + k d s(t) = e lT w x + e 2T w 2 = e T w (22)
We prove that the error equation (22) along with the update law (17) yields a bounded y(t)
asymptotically converging to yjj).
Let us take the Lapunovlike (Slotine & Li, 1991) function of the form
V{e,0) = e 2 +0 T (23)
hence
V = s • e + 1 = e(k d e + 1 w) sO 1 w = k d s 2 <0 (24)
If we assume that k d > we have proved that Lapunov function is decreasing along
trajectories of (22); thereby establishing bounded £ and . However, to verify that £ — >
as t — > oc we use Barbalat's lemma (Slotine & Li, 1991) To check the uniform continuity of
V it is enough to prove that the second derivative of V i.e.
V = 2k d ££ = 2k d £(k d £ + 6 T w) (25)
is bounded. This in turn needs W , a continuous function of X to be bounded. Note that if
£ and y d are bounded, it is implied that y is bounded. These facts and assumed stable
zero dynamics imply that the state X is bounded. Now (if we could guarantee that g(x) of
(12) is bounded away from zero) it follows that W is bounded. □
Remarks:
Note that, although £ converges to zero the system (22), (17) is not asymptotically stable
because 6 is only guaranteed to be bounded.
Prior bounds on the parameters Q 1 are frequently sufficient to guarantee that g(x) is
bounded away from zero (Sastry & Bodson, 1989).
One can now observe that adaptive reconstruction of functions f and g in the formula (11)
may be interpreted as an extra control leading to much more exact cancellation of system (2)
nonlinearities, which in turn make the resulting system closer to linear (see Fig. 1)
380
Automation and Robotics
R
T(s)s r *®^> ®>
±W
Plant y
y {r) =f(x) + g(x)u
Fig. 1. Model basis functions adaptive control scheme.
3. Adaptive ship pathfollowing control synthesis
Prior to introduction a model that represents further a base for controller synthesis we
define some preliminary notions.
3.1 Pathfollowing errors definition
Assume that a path to be followed (preset) is composed of broken line segments defined by
a sequence of vertexes (turning points) P](x],yj), P2^2,yi), ••• , Pi(xuyd , •••> P n ( x n>yn) Let us
introduce also the following coordinate systems (Fig.2):
earthfixed coordinate system (X g ,Y g ) (these coordinates can be measured directly via GPS).
relative (transformed) coordinate system (X r , Y r ) whose center is located at the point Pfapyi)
and with the axis OX r directed along a segment iW; 0=1, 2,. ..,n)
The relative ship position (x n y r ) as well as its relative heading y/ r can be obtained through
the following simple transformation:
(26)
which express the successive translation and then rotation of the earthfixed system where
(p r o is an angle of its rotation
X r
cos<p ro
sin^ ro
x g x f
y r
=
sinp ro
cos^ ro
y g si
Vr
C
1
¥~(Pro
tan£? ro =
y i+ iyi
(27)
X,
i+\
X;
Now it is reasonable to treat the coordinate y r and the heading y/ r as the pathfollowing
errors corresponding to the given segment.
For curvilinear reference path the local (relative) coordinate system should be tangent to the
path at the point that is closest to the actual ship position. This system has to be then shifted
and rotated from time step to time step in such a way, that it remains tangent to the
reference path and that the xcoordinate represents the arc length along the path.
Nonlinear Adaptive TrackingControl Synthesis for General Linearly Parametrized Systems
381
Fig. 2. Earthfixed and relative coordinate systems
3.2 The case with functional uncertainty
In order to synthesize a pathfollowing controller we apply the adaptive control concepts,
presented in the section 2., to the following (partially known), ship motion model presented
in the form of socalled error equation
y r  usmy/ r +vcos^ r
y/ r =r
(28a)
(28b)
(28c)
with the output
y = y r (28d)
where
y r  relative abscissa of the ship position (crosstrack error)
y/  relative heading (courseerror)
r  angular velocity
u  longitudinal velocity
v  transversal velocity
y  system output
8 rudder deflection as a control variable
c  unknown model parameter
O()  unknown function
The equation (28a) is a second equation of the ship kinematical model (compare the first two
equations of model (39)) while (28b) and (28c) are in fact the Norrbin ship model (Fossen,
1994; Lisowski, 1981) whose standard form
382 Automation and Robotics
Ty/ + F(y/) = kS (29)
can be transformed into the relevant equations of (28) via definition \j/ r = T and
substitution of
Q = iH and C = k/T (30)
T
The first equation of kinematics, in the model (28), is omitted as x r represents movement
along the path  which is irrelevant here. It is also assumed, for simplicity, that transversal
velocity v is of the form v = —r x r (compare the last equation of model (39)) where n is
unknown.
The double differentiation (which in fact represents a formalism delivered in appendix) of
output y with respect to time leads to
y = f(x)+g(x)s (3i)
where
f(x) = ru cos y/ r + r x r 2 sin y/ r  r x cos y/ r • ® (r) (32a)
g(x) = cr 1 cos y/ r (32b)
and the state vector x = [y r y/ r r] is assumed to be accessible to measurement.
Simple analysis of this system as well as physical limitations indicate its stable internal
(zero) dynamics.
Remark:
In the 'classical 7 approach to ship control the structure of function F is (according to Norrbin
model) often adopted in different ways. Generally it may be assumed in the form
F{\f/) = a 3 iy 3 + a 2 y/ 2 + a x \j/ + a (33)
or ignoring the terms of third or second degree we have for example
F{\f/) = a 3 y/ 3 + a x y/ + a Q (34)
Now, assuming that a structure of the function F has been predetermined, the coefficients a\
are usually identified via sea trials (Lisowski, 1981).
Owing to that as well as taking into account that O has a similar structure as F (below we
take the case (33)), it is natural to estimate the (partially) unknown functions (32) of model
(31) as follows
f(x) =f J $f i +f = ey C o Wr + ey cos^ + (35a)
+ Olrcosy/ r + 0\ cos^/ r + 0\r 2 smy/ r + ru cosy/ r
Nonlinear Adaptive TrackingControl Synthesis for General Linearly Parametrized Systems 383
g( X ) = f j eh i +go=%™Wr ( 35b )
1=1
defining thereby a set of model basis functions/, gi.
It can be seen from (35) that to implement our algorithm besides of the state vector
measurements the longitudinal velocity u is also required.
To complete the employing of the theory introduced earlier to our specific case we also
need:
the measure of the error
rudder control law
where
e(t) = e + rje = y r +jSy r (36)
ff  f(x) + v
8 = J V 7 (37)
v(0 = y d ~ M 2 e ~ Mi? = M 2 yr  Miy r ( 38 )
and the parameter update law (17).
Note that in our setting above (coordinate transform) y d = , so a main task for our
controller is to bring output i.e. crosstrack error to zero. In fact bringing at the same time
y/ r to zero, in presence of disturbances (e.g. transversal current), is (for the considered here
ship (39)) not always possible (Zwierzewicz, 2003) This way the pathfollowing process may
be, in our case, accomplished only in the presence of a course error (nonzero drift angle).
4. Ship model and simulations
4.1. Ship motion model
As a simulation model that represents further a real ship dynamics we adopt here the
following de WitOppe's (WO) ship dynamical model (Wit & Oppe, 197980).
X =
u cos y/  v sin y/
y =
u sin y/ + v cos y/
i// =
z r
r =
 ar 
 br 3 + cd
u =
fu
Wr 2 +S
v =
r x r 
r 3 r 3
(39)
where
(x, y)  Cartesian coordinates
y/  course (heading)
r  angular velocity
384 Automation and Robotics
u  longitudinal velocity
v  transversal velocity
8 rudder deflection as a control variable
S  propelling force
Compared to the model (28) one can see that the structure of function O adopted there
takes the form 0(r) = br 3  ar . Note that this ship characteristic is obviously unknown
to the control system designer and has to be adaptively reconstructed.
As the ship model parameters the dynamic maneuvering parameters of the m.s. Compass
Island model are adopted. The units of time, length and angle are respectively one minute,
one nautical mile and one radian. The parameters were determined as follows a = 1.084
/min, fr=0.62min, c = 3.553 rad/min, n = 0.0375 nm/rad, r 2 =0, /= 0.86 /min, W= 0.067
nm/rad 2 , S=0.215 nm/min 2 . The maximum speed of rudder and rudder angle are 3.8
deg/s, and 35 deg, respectively. The ship has got the following characteristics, gross register
tonnage 9214 t, deadweight, 13498 t, length, 172 m, draught, 9.14 m, one propeller, and
maximum speed, 20 knots. Notice that the adopted parameters make the ship directionally
stable (Fossen, 1994; Lisowski, 1981) and that other ship dynamic model (parameters) could
be used here as well.
4.2 Simulation results
The Simulink simulations are based on the nonlinear WO model of ship dynamics (34)
including the controller (37) together with the main feedback linear control component (38),
while the adaptation mechanism is realized by aggregate tracking error (36), model basis
functions (35) as well as parameters update law (17) (Fig. 1).
In Fig. 3 the path to be followed (preset) is a broken line defined by the way points (0,0);
(0,10); (4,12) and (4, 20). The original ship position, its heading and angular velocity are (0,
0.5), 60° and rad/min respectively. The adopted distance scale is 1 nm while the nominal
ship velocity is 0.25 nm/min. In the simulation a transversal current has been, as a load
disturbance, introduced (d y =0.04 nm/min).
To evaluate the accuracy of adaptive process control there is depicted here also a trajectory
(blue) driven by controller (37) with fully known dynamics (exact model functions). As we
can see the differences are practically negligible.
Fig. 4. describes plots of ship heading versus time. The blue line refers to the case of the fully
known ship dynamic model. As one can observe the ship heading, during straight line path
segments, is about 10 deg, which in fact indicate a courseerror. Such a behavior is, on the
other hand, necessary to compensate an effect of currents action. These simulations comply
thereby with the relevant comment of section 3.2.
In Fig. 5. it can be seen, that in the case of limited ship model knowledge, the rudder action
is substantially more intensive (red line), as compared to the case of full model familiarity.
The last Fig. 6. depicts the plots of crosstrack errors versus time. As before the red plot
refers to the limited knowledge of the ship dynamics. It proves once more that the
differences are relatively small.
An interesting feature of the adaptation process is that the steering process is performed
without asymptotic convergence of parameters errors W T 2T I to zero (we have
proved, at the most, their boundedness). This fact reflects an idea that the main goal of the
adaptive system is to drive the error e '.— y — y d to zero which does not necessarily imply
Nonlinear Adaptive TrackingControl Synthesis for General Linearly Parametrized Systems
385
that the controller parameters approach their correct values. In fact, the input signal must
have certain properties, for the parameters to converge, related to the notion of persistent
excitation (Astrom & Wittenmark, 1995). This concept, in reference to the closedloop signals,
may be formulated as a requirement of sufficient richness of functions w (15). It is, however,
impossible to verify this condition explicitly ahead of time (Sastry & Isidori, 1989; Wang &
Hill, 2006).
<
x
ship trajectories
u JLh— ■ **"f"!
current
z$
^^^~
original siip position
1
2
YAxis
Fig. 3. Ship trajectories, constant current.
70
60
50
40
I
2. 30
P
10
10
20
10 20 30 40 50 60 70 80
Time [min]
Fig. 4. Ship headings versus time.
90
386
Automation and Robotics
Fig. 5. Rudder deflections versus time.
0.2
0.1
, ,
h
c
■ — ■
0.1
p
h
LJJ
0.2
0.3
0.4
0.5
i 1 1 1 1 1 1
I i 1 1 1 1 ' — I [■ ^
10 20
30 40 50
Time [min]
60 70 80 90
Fig. 6. Crosstrack errors versus time.
As a reference input comprises stepwise signals (path) changes, to fulfill the assumptions of
its differentialability it has been initially prefiltered. Similarly the wave disturbances were
modeled in the form of a white noise driven shaping filter (Fossen, 1994; Zwierzewicz,
2003).
During conducted here simulations, the system performance turned out to be especially
sensitive for initial guess of parameter Q* that had to be picked up in some vicinity of its
true value ( true value 0.133; picked up 0.5). In this respect, to ensure robustness for the
disturbances that arise due, e.g., to the initial guess of parameters and thus inherent
approximation errors the system should be additionally augmented with a sliding mode
control. This technique is often applied to force the system global stability (Fabri &
Kadrikamanathan, 2001; Sanner & Slotine, 1992; TzirkelHancock & Fallside, 1992).
5. Conclusion
In the paper a general class of uncertain, linearly parametrized, nonlinear SISO plants was
considered. It has been proven that proportional state feedback plus adaptation via model
Nonlinear Adaptive TrackingControl Synthesis for General Linearly Parametrized Systems 387
basis functions are able to assure their asymptotic stability. As a result of presented theory an
adaptive ship pathfollowing system has been proposed. The presented simulations confirm
that the system is insensitive for object (ship) model unfamiliarity.
6. References
Astrom, K. & Wittenmark, B. (1995). Adaptive Control. Addison Weseley.
De, C. Wit & Oppe, J. (197980). Optimal collision avoidance in unconfined waters Journal of
the Institute of Navigation, Vol. 26, No. 4, pp. 296303.
Fabri, S. & Kadrikamanathan, V. (2001). Functional Adaptive Control. An Intelligent Systems
Approach. Springer Verlag.
Fossen, T. I. (1994). Guidance and control of ocean vehicles. John Wiley.
Lisowski, J. (1981). Statek jako obiekt sterowania automatycznego. Wyd. Morskie Gdansk, , (in
Polish).
Isidori, A. (1989). Nonlinear Control Systems. An Introduction. Springer Verlag, Berlin.
Sanner, R. & Slotine, J.E. (1992). Gaussian networks for direct adaptive control IEEE
Transations on Neural Networks vol. 3, no. 6, pp.837863, Nov. 1992,
Sastry, S. & Bodson, M. (1989) Adaptive control: Stability, Convergence and Robustness. Prentice
Hall, ch. 7.
Sastry, S. & Isidori, A. (1989). Adaptive control of linearizable systems IEEE Transations on
Automatic Control vol. 34, no. 11, pp. 11231131.
Slotine, J. E. & Weiping, Li. (1991). Applied Nonlinear control. Prentice Hall.
Spooner, J. T. & Passino, K. M. (1996). Stable adaptive control using fuzzy systems and
neural networks" IEEE Transactions on Fuzzy Systems Vol. 4, No. 3, pp. 339 359.
TzirkelHancock, E. & Fallside, F. (1992). Stable control of nonlinear systems using naural
networks International Journal of Robust and Nonlinear Control, vol. 2, pp. 6386,
Wang C. & Hill, D. J. (2006). Learning from neural control IEEE Transations on Neural
Networks Vol. 17, No. 1, pp.130146.
Zwierzewicz, Z. (2003). On the ship guidance automatic system design via lqgintegral
control in Proc. 6 th Conference on Manoeuvring and Control of Marine Crafts
(MCMC2003), Girona, Spain, pp. 349353.
Zwierzewicz, Z. (2007a). Ship coursekeeping via nonlinear adaptive control synthesis, In:
Emerging Technologies, Robotics and Control Systems, Int. Society for Advanced
Research, Ed. Salvatore Pennacchio, Palermo, Italy.
Zwierzewicz, Z. (2007b). Ship guidance via nonlinear adaptive control synthesis IF AC
Conference on Control Applications in Marine Systems, 1921, Sept., Bol, Croatia.
7. Appendix
We will prove that the system (1),(3) may be easy transformed to the form (2), (4). To this end
we recall to the concept of Lie derivative.
Lie derivative of scalar function h(x) with respect to a vector a(x) , denoted by L h(x) is
defined as:
L a h(x) = Vh(x)a(x) (40)
388 Automation and Robotics
where Vh denotes the gradient of h(x) i.e. [dh/ dx l ...dh/ dx n J. Lie derivative is scalar so
the process of taking Lie derivatives could be chained and is denoted as follows
r a h(x) = V(L' 1 h(x))a(x) (41)
L fi H a h(x) = V(H a h(x))fi(x) (42)
Differentiating y in eqation (1) with respect to time and using Lie derivatives we get e.g.
y (l) = ?x = L a h(x) + LMx)u (43)
dx
where y^ denotes te zth derivative of y with respect to time.
Assume that the system (1) has relative degree equal to r i.e. after r differentiations the
following conditions are satisfied
L p ll a l h(x) = for z = l,..., (r1) (44a)
L p L r a l h(x) * (44b)
Calculating now the Lie derivatives of rth order to the system (1),(3) yields
kkx) =£•••£ £«a • • ■% v ( • • v ( vh ■ «., K • • •)«, w =£#£(*) ( 45 )
and
m 2 m l m x n 2
L fi L r ; l h(x) = £ ££«,, a i b j V(V((VA«,. ))a ir yfij{x) = £3 2 g,(*) ( 46 )
y=l / r _ 1= l i 1= l =1
So the system (1) can be written in the form
y {r) =U a h(x) + L l} i; a  l h(x)u = f j elf i (x) + Y j etg i (x)u (47)
1=1 1=1
which is in fact system (2), (4).
Observe that the free terms f (x) and g (x) in formula (4) may be easy obtained by
treating one of the coefficients in each sum of (3) as equal to one e.g. a x = 1 and b x =\. This
way one of the terms in the formula (45) will take a form L r a h(x) = f (x) or respectively
L. L r  l h(x) = g (x)  in relation to ( 46).